본문 바로가기

분류 전체보기47

컴퓨터 구조 - CPU ( 코어 ) [혼공컴구] 1. CPU의 구조 1-1. ALU - 계산을 담당 - 동작 과정 1. 레지스터를 통해 피연산자를 받아들임 2. 제어장치로부터 수행할 연산을 알려주는 제어 신호를 받아들임 3. 레지스터와 제어장치로부터 받아 들인 피연산자와 제어 신호로 산술 연산, 논리 연산등을 수행 4-1. 연산 결과는 바로 메모리에 저장하지 않고 일시적으로 레지스터에 저장 - 연산 결과는 특정 숫자나 문자, 메모리 주소 등으로 표현됨 - 연산 결과를 레지스터에 저장하는 이유는 메모리 접근 횟수를 줄여 속도를 향상 시키기 위함 4-2. 플래그 레지스터를 내보냄 - 음수 양수 구분 등 연간 결과에 대한 추가적인 정보를 담음 - 연산을 실행한 직후 플래그를 합쳐 연산 결과를 확인함 1-2. 제어장치 - 제어장치는 제어 신호를 내보내고, 명.. 2023. 11. 17.
컴퓨터 구조 - 명령어 [혼공컴구] 1. 명령어의 구조 1-1. 연산 코드 (연산자) - 연산 코드 필드에 존재 - 명령어가 수행할 연산 - 크게 데이터 전송, 산술/논리 연산, 제어 흐름 변경, 입출력 제어 유형의 4가지로 나뉨 1-2. 오퍼랜드 (피연산자) - 오퍼랜드 필드에 존재 - 연산에 사용할 데이터 또는 연산에 사용할 데이터가 저장된 위치 - 보통 연산에 사용할 메모리의 주소나 레지스터 이름이 담김 - 명령어의 길이를 줄이기 위해 주소나 레지스터를 저장함 - 따라서 주소 필드라고도 불림 - 명령어 안에 하나도 없을 수도 있고, 한개 이상이 담길 수도 있음 - 오퍼랜드의 수에 따라 0-주소 명령어, 1-주소 명령어 등으로 명명함. mov ax, [operand1] add ax, [operand2] mov [result], ax m.. 2023. 11. 17.
컴퓨터 구조 - 데이터 [혼공컴구] 1. 정보 단위 - bit : 0과 1을 표현 - byte : 8비트 - kB : 1,000byte - MB : 1,000kB - GB : 1,000MB - TB : 1,000GB - kiB : 1,024byte - MiB : 1,024kB - GiB : 1,024MB - TiB : 1,024GB - word : CPU가 한 번에 처리할 수 있는 데이터 크기를 의미 - 만약 CPU가 16 비트를 한 번에 처리 가능하다면, 1 word는 16비트가 됨 2. 이진수의 음수 표현 - 컴퓨터는 0과 1만 이해할 수 있기 때문에 마이너스 부호를 사용 불가 - 2의 보수를 구해 음수로 간주 - 11(2)의 보수는 01(2) - 이진수만 봐서는 컴퓨터가 음수인지 양수인지 판별 불가 - 플래그 레지스터를 사용해 판별 .. 2023. 11. 17.