Jonathan E. Steinhart 의 <한 권으로 읽는 컴퓨터 구조와 프로그래밍>을 읽고 정리하는 온라인 책터디.
매주 2 챕터씩 진행합니다.
요약된 내용은 모두
Jonathan E. Steinhart. (2021). 한 권으로 읽는 컴퓨터 구조와 프로그래밍(오현석, 역). 경기: 책만. (원서 2019년 발행)
>>>책터디 _1주차
비트
자연어의 상자-문자
컴퓨터의 상자-비트 : 2진법 바이너리 + 숫자 디지트 의 결합
논리연산
-불리언대수 : NOT, AND, OR + XOR
-드모르간의 법칙
a AND b = NOT(NOT a OR NOT b)
NOT을 충분히 사용하면 AND 연산을 OR 연산으로 대신할 수 있다(그리고 역으로 OR을 AND로 대신할 수 있다)는 뜻.
자연어의 이중부정 과 비슷한 일.
정수를 비트로 표현하는 방법
-2진수에서 가장 오른쪽의 비트를 가장 작은 유효 비트(LSB), 가장 왼쪽의 비트를 가장 큰 유호비트(MSB)라 부른다.
-2진수에서 0 더하기 1은 그냥 1이다.
-음수표현
부호와 크기
비트 그룹의 이름
비트는 너무 작아서 기본 단위로 사용하기에는 유용성이 떨어진다. -> 좀 더 큰 덩어리로 조직화
바이트 : 8비트 덩어리의 기본 단위
텍스트 표현
수를 사용해 문자나 키보드에 있는 다른 기호 표현
-아스키코드 : 정보교환을 위한 미국 표준 코드. 모든 기호에 7비트 수 값 할당
-하드웨어
비트에 대해 동작하는 장치를 포함해 모든 물리적인 장치
-아날로그와 디지털의 차이
계산자:수학적으로 연속적. 실수 표현 가능.
손가락:이산적(하나하나 다른 존재로 구분). 정수만 표현
아날로그 - 연속적. 디지털 - 이산적.
-하드웨어에서 크기가 중요한 이유
CPU는 한면이 18밀리미터. 40억 분의 1초는 전자가 이 CPU 안을 두번 왕복할 시간.
컴퓨터에서 모든 것을 작게 만들면 더 높은 성능 달성 가능.
하드웨어 작게 만들면 거리가 줄어, 필요한 에너지의 양 줄어듬.
그러나 하드웨어 작을시 문제 발생
-디지털을 사용하면 더 안정적인 장치를 만들수 있다
하드웨어 작으면 속도, 효율 좋지만, 물체가 작아지면 서로 간섭이 쉬워짐.
-아날로그 세계에서 디지털 만들기
전이함수.
입력이 조금만 변해도 곡선의 가파른 부분 때문에 확 달라진다.
-10진 숫자 대신 비트 사용 이유
-전기는 수도 배관과 유사하다
직렬연결:AND연산
병렬연결:OR연산
도체-파이프내부, 부도체-파이프 자체
관이 더 가늘수록, 물의 양을 제한하는 저항이 더 커진다.
저항을 측정할때는 옴
-옴의법칙. '전류는 전압을 저항으로 나눈 값과 같다'.
저항이 더 크면 전류가 줄어든다. 게다가 저항은 전기를 열로 바꾼다.
논리 게이트
1960년대 중반, 텍사스 인스트루먼츠-직접회로 패밀리 발표.
논리게이트(logic gate), 게이트 : 논리 연산을 수행하는 회로가 미리 들어가 있는 칩들.
하드웨어 설계자의 중요한 존재.
논리 설계자도 AND 게이트, OR 게이트, XOR 게잍, 인버터(NOT을 수행하는 게이트)가 들어 있는 '박스'얻을 수 있다.
게이트를 조합한 복잡한 회로
-가산기
각 비트의 XOR : 두 비트를 더한 값
두 비트의 AND : 올림
두 비트를 더할때는 반가산기로 충분하지만, 올림을 처리하려면 세번째 입력이 필요하다.
전가산기 : 세 입력 중 2개 이상이 1일때 올림이 발생한다.
-디코더
수를 비트로 인코딩과 반대로, 디코더는 인코딩된 수를 개별 비트의 집합으로 만들어준다.
출처 :
Jonathan E. Steinhart. (2021). 한 권으로 읽는 컴퓨터 구조와 프로그래밍(오현석, 역). 경기: 책만. (원서 2019년 발행)