본문 바로가기
CS

10진 표현 pack형식/unpack형식, 2진 부동 소수점

by noddu 2023. 9. 5.
728x90
반응형

 

 

unpack 형식

연산 불가능출력 가능

 

1바이트(8비트)를 존(zone)부분과 디지트(digit) 부분으로 구성

zone - 항상 1111(16진수 F)가 들어감

digit - 10진수 값이 BCD 코드로 들어감

 

가장 오른쪽 zone 부분에 부호가 들어감

  • 양수인 경우 - 1100(16진수 C)
  • 음수인 경우 - 1101(16진수 D)
  • 부호가 없을 경우 - 1111(16진수 F)

 

 

zone digit zone digit sign digit
1111(F)   1111(F)   양수 1100(C)
음수 1101(D)
없음 1111(F)
 

 

 

 

10진수 + 426을 언팩 10진수 형식으로 표현하면?

 

이런식으로 4 2 6 나눠서 표현할 수 있다

정답: F4F2C6

 

 

 

반응형

 

 

pack 형식

연산 가능출력 불가능

 

10진수 한자리를 표현하기 위해 존 영역이 없이 4비트를 사용하는 형식

 

가장 오른쪽 하위 4비트에 부호를 표시

  • 양수인 경우 - 1100(16진수 C)
  • 음수인 경우 - 1101(16진수 D)
  • 부호가 없을 경우 - 1111(16진수 F)

 

2진 부동 소수점

컴퓨터의 부동 소수점 수는 IEEE 754 표준을 따름

단정도 표현인 경우

  • 부호 1비트, 지수 8비트, 가수 23비트로 표시
  • 지수의 바이어스는 10진수 127(2진수 0111 1111)
  • 바이어스가 있는 것음 음수를 양수로 표현하기 위해 (0이 127, -1이 126으로 표시)

기본 형태는 1.M x 2ⁿ 입니다.

 

부호 1비트 지수 8비트 가수 23비트
양수 - 0
음수 - 1
바이어스
- 10진수 127(0111 1111을 더함)
1.xxx 에서 1.을 생략한 가수

 

2진수 11101001001101를 단정도 부동 소수점 표현 방식으로(IEEE 754 표준을 따르며 바이어스는 127)

 

[지수부 구하기]

 

 

1.1101001001101 x 2¹³ 형태가 됩니다.

지수가 13이니 127을 더하면 140입니다.

 

 

 

140을 2진수 코드로 변경하면 다음과 같습니다

 

 

 

4자리씩 나눠 8421 코드로 바꾸면 8C가 됩니다.

지수부는 16진수 8C입니다.

 

 

 

 

[가수부 구하기]

 

4자리씩 만드는데 나머지는 0으로 채웁니다

 

 

 

8421 코드로 바꾸면 D268이 됩니다.

가수부는 D268입니다.

 

 

 

 

 

실수 0.01101₂을 32비트 부동 소수점으로 표현, 지수부에 들어갈 표현은?
(IEEE 754 표준을 따르며 바이어된 지수는 01111111₂로 나타냄)

 

 

 

지수가 -2이니 127을 더하면 125입니다.

2진수로 표현하면 01111101이 됩니다.

반응형

'CS' 카테고리의 다른 글

명령어 형식과 특징  (0) 2023.09.27
반가산기와 전가산기  (0) 2023.09.19
논리게이트와 드 모르간 법칙  (0) 2023.09.10
패리티 비트, 해밍 코드  (0) 2023.09.05
BCD 코드, 그레이 코드, 3초과 코드  (0) 2023.09.05