오늘이라도

Java의 정석, Ch. 02-3 진법 본문

취업성공패키지 SW 개발자 교육/Java

Java의 정석, Ch. 02-3 진법

upcake_ 2020. 2. 27. 19:15
반응형

https://github.com/upcake/Class_Examples

교육중에 작성한 예제들은 깃허브에 올려두고 있습니다. 


3.1 10진법과 2진법

 

 

3.2 비트(bit)와 바이트(byte) 

 - n 비트로 표현할 수 있는 10진수 값의 개수 : 2^n, 값의 범위 : 0 ~ 2^n - 1

 

3.3 8진법과 16진법

 - 8진수는 2진수 3자리를, 16진수는 2진수 4자리를 각각 한자리로 표현할 수 있기 때문에 편리하다.

 

3.4 정수의 진법 변환

 

3.5 실수의 진법 변환

 ① 10진 소수에 2를 곱한다.

 ② 결과에서 소수부만 가져다가 다시 2를 곱한다.

 ③ 과정을 소수부가 0이 될때까지 반복한다.

 ④ 결과에서 정수부만을 위에서 아래로 순서대로 적고 '0.'을 앞에 붙이면 된다.

ex) 0.625 * 2 = 1.25

0.25 * 2 = 0.5

0.5 * 2 = 1.0

0.625 → 0.101

 

3.6 음수의 2진 표현 - 2의 보수법

 - n의 보수 : 더했을 때 n이 되는 수

 - 2의 보수 관계 : 더해서 2가 되는 두 수의 관계

 - 10진수 2는 2진수로 '10'이며 이것은 자리올림이 발생하고 0이 되는 수를 뜻한다. 그래서 '2의 보수 관계'에 있는 두 2진수를 더하면 자리올림이 발생하고 0이 된다.

 - 1의 보수는 0을 1로, 1을 0으로만 바꾸면 되고 여기다 1을 더하면 2의 보수가 된다.

 - 음수의 2진 표현을 구하는 방법

(1) 음수의 절대값을 2진수로 변환한다. / -5의 절대값인 5를 2진수로 변환한다. 0101

(2) 2진수의 1을 0으로 0은 1로 바꾼다. (1의 보수 구하기) / 0101 → 1010

(3) (2)의 결과에 1을 더한다. / 1010 + 0001 = 1011 이것이 -5의 2진 표현이다.

반응형