https://im-not-robot-0.tistory.com/85
위 게시글에서 음의 정수를 2진수로 표현하는 방법에 대해 알아보았다.
2진수로 표현된 음의 정수는 양의 정수와 달리 그 값의 크기를 바로 계산하기 어렵다.
음의 정수의 크기 ( 부호를 뺀 값 )를 구하는 방법은 과연 2의 보수를 거꾸로 행하는 방법밖에 없을까?
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 // -16 (2진수)
위의 2진수에 2의 보수 (1. 1의 보수 취하기 2. 1을 더하기)를 취하면
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 // -16 (2진수)에 1의 보수 취함
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 // 1의 보수를 취한후, 1을 더함 => +16 (10진수)
따라서 크기가 16이다.
따라서 음의 정수에 2의 보수를 취하여 크기 를 쉽게 확인할 수 있다.
'c' 카테고리의 다른 글
[c언어/열혈 c프로그래밍] p.100 문제 04-4 비트 연산의 이해 (0) | 2023.08.05 |
---|---|
[c언어/열혈 c프로그래밍] 비트 연산자 (LeftShift, RightShift) (0) | 2023.08.05 |
[c언어/열혈 c프로그래밍] p.89 문제 04-3 음의 정수 표현하기 (0) | 2023.08.05 |
[c언어/열혈 c프로그래밍] p.83 문제 04-2 <데이터 표현의 이해> (0) | 2023.08.03 |
[c언어/열혈 c프로그래밍] p.82 문제 04-1 <진법의 이해> (0) | 2023.08.03 |