본문 바로가기

Domain/컴퓨터구조

10. Computer Arithmetic

정수 표현 방식

1. Sign-Magnitude Representation

  사람과 같이 수를 표현하는 방법. 양수, 음수 표현이 쉬우나 0을 표현이 두가지이고 덧셈과 뺄셈을 부호와 숫자 따로 계산해야 한다.

 

2. Twos Complement Representation

  양수나 음수 값이 있을 때 0, 1의 값을 바꾸고 1을 더하는 방식.  0의 표현이 1가지 이고 비트 수를 늘리고 싶을 때 sign(부호) 앞에 같은 sign 값을 개수만큼 늘리면 된다. Overflow가 발생할 가능성이 있다.

  Subtraction rule : 컴퓨터가 뺄셈을 하지 않게됨.

 

Overflow rule

  같은 부호의 합의 결과로 carry가 나온 경우. 부호를 제외한 숫자들의 합에 carry가 나온경우(=부호가 바뀐 경우). 앞의 carry가 배타적 논리합인 경우 ALU Overflow임을 감지하여 해결한다. => 오류임

Carry

  비트가 수의 표현 범위를 넘어 간 경우. 오류와는 연관이 없다.

 


* Floating-Point Representation

소수점 위치가 유동적인 실수 표현 방식. 일반화: 1.M x 2n

 Example. 변환 예시

 

 

Example. 43.25를 변환하시오

1. 43.25를 2진수로 변환

43=101011, 0.25=0.01 ==> 43.25 = 101011.01

 

2. 2진수를 일반화

1.0101101 * 2^5

 

3. 지수부를 계산하여 2진수로 변환

5+127 = 132 => 1000 0101

 

4. 부호 결정

양수 -> 0

 

5. 부호, 지수부, 가수부를 모두 연결

0 1000 0101 01011010 00000 ...

 

 

'Domain > 컴퓨터구조' 카테고리의 다른 글

6. External Memory  (0) 2020.03.14
7. I/O (Input/Output)  (0) 2020.03.12
11. Instruction Set : Characteristrics and Function  (0) 2020.03.12
12. Instruction Sets : Addressing Modes and Formats  (0) 2020.03.12
13. RISC vs CISC  (0) 2020.03.12