본문 바로가기
반응형

Computer Science/컴퓨터 구조14

컴퓨터의 산술연산 덧셈 먼저 덧셈입니다. 덧셈은 일반적인 10진수 간의 덧셈 처럼 수행합니다. 단, 이때 올림수는 버리게 됩니다. 이 덧셈과 뺄셈을 처리하는 H/W는 병렬 가산기가 처리합니다. 병렬 가산기는 비트 수만큼의 전가산기로 구성되고, 여러 비트들로 이루어진 두 개의 데이터에 대한 덧셈을 수행하는 회로입니다. 이때 병렬 가산기에 상태 비트 제어회로를 포함시켜, 덧셈 과정에서 상태를 저장합니다. 상태 비트는 4가지를 저장하는데, 덧셈을 수행했을 때, 마지막 발생 올림수, 그 한단계전 올림수의 XOR 연산으로 V Flag(Overflow 판단) 를 저장하고, 마지막 연산에서의 발생 올림수로 C Flag, 각 덧셈의 결과의 NOR 연산으로 Z Flag, 마지막 연산의 부호로 S Flag를 세트합니다. 뺄셈 뺄셈은 덧셈과.. 2024. 1. 8.
컴퓨터의 논리연산 논리 연산 컴퓨터 내의 논리적 데이터는 단어 내의 각 비트 단위로 의미를 가지고, 연산 또한 비트 단위로 처리됩니다. ex) A = 0, B = 1 과 같이 비트 단위로 주어지고 OR, AND, XOR, NOT의 연산 수행 이를 위해서 H/W Module은 4X1 멀티 플렉서에 OR, AND, XOR, NOT 수행결과를 선택 신호에 의해 선택하여 출력하는 방식으로 구성됩니다. 기본적인 논리연산 먼저 AND 연산입니다. AND 연산은 두 비트를 비교해 모두 1인 경우 결과 데이터의 비트는 1로 세트되고, 둘 중 하나라도 0이라면, 0이 세트됩니다. 이 결과 데이터 비트는 논리 데이터이므로, TRUE, FALSE의 논리적 의미를 가집니다. 다음으로 OR 연산입니다. OR 연산은 두 비트를 비교해 모두 0인 .. 2024. 1. 8.
컴퓨터의 수 표현 ALU 산술논리연산장치인 ALU는 다음 장치들로 구성됩니다. 산술연산장치 논리연산장치 시프트 레지스터 (시프트 연산 대상으로 사용) 보수기 (2의 보수 변환) 상태 레지스터 (Flag를 나타냄) 수의 표현 컴퓨터에서 수는 2진수로 표현합니다. 따라서, 0과 1, 그리고 부호와 소수점으로 표현됩니다. 2진수에서 10진수로 변환할 때에는 다음과 같이 변환됩니다. A = n-1번째 a * 2^(n-1) + ... + 1번째 a * 2^1 + 0번째 a * 1 소수는 다음과 같이 변환됩니다. ex) 1101.101 = 8 + 4 + 1 + 0.5 + 0.125 = 13.625 하지만 10진수 실수에서 2진수로 변환할때는 근사값이 나오게됩니다. (필자 생각으로 0.1 + 0.9가 1이아니라 1에 수렴하는 이유가 .. 2024. 1. 8.
명령어 세트(Instruction Set) 명령어 세트 명령어 세트란, CPU를 위해 정의되어 있는 명령어들의 집합을 말합니다. 명령어 세트를 설계하기 위해서는 다음 사항들을 먼저 고려해야합니다. 연산종류 (연산 수 및 복잡도 등) 데이터 유형 (데이터 길이, 수 표현 방식 등) 명령어 형식 (명령어 길이, 오퍼랜드 필드 수 등) 주소지정 방식 (오퍼랜드 주소 지정 방식) 연산 종류 연산 종류로는 데이터 전송이나 산술연산, 논리연산, I/O 연산, 프로그램 제어 연산이 있습니다. 이 중 프로그램 제어를 위한 두 가지 기본연산이 있는데, 바로 CALL 명령어와 RET 명령어입니다. CALL 명령어는 말그대로 서브루틴을 호출하는 명령어이고, RET 명령어는 서브루틴으로 부터 원래 프로그램으로 복귀하는 명령어 입니다. 먼저 CALL 명령어의 마이크로 .. 2024. 1. 4.
반응형