issues
search
1two13
/
CS
혼자 공부하는 컴퓨터 구조 + 운영체제
2
stars
0
forks
source link
[데이터] 0과 1로 숫자를 표현하는 방법
#11
Open
1two13
opened
1 year ago
1two13
commented
1 year ago
정보단위
비트(bit)
0과 1
을 나타내는
가장 작은 정보 단위
n비트는
2의 n제곱
가지의 정보를 표현할 수 있다.
워드(word)
CPU가 한 번에 처리할 수 있는 데이터 크기
ex. CPU가 한 번에 16비트를 처리할 수 있다면 1워드는 16비트다.
1two13
commented
1 year ago
여러 단위들
1바이트(1byte) === 8비트
1킬로바이트(1kB) === 1,000바이트
1메가바이트(1MB) === 1,000킬로바이트
1기가바이트(1GB) === 1,000메가바이트
1테라바이트(1TB) === 1,000기가바이트
=> 바이트를 제외한 kB, MB, GB, 그 이상의 단위들은 모두 이전 단위를 1,000개 묶어 표현한 단위다.
1two13
commented
1 year ago
이진법
0과 1만으로 모든 숫자를 표현하는 방법
숫자가 1을 넘어가는 시점에 자리 올림
2의 보수
이진수(이진법으로 표현한 수)의 음수 표현이다. 즉 0과 1만으로 음수를 표현하는 방법이다.
모든 이진수의 0과 1을 뒤집고(1의 보수), 그 값에 1을 더하면 2의 보수가 된다.
ex. 11(2) => 00(2) => 01(2)
1two13
commented
1 year ago
-1011(2)을 표현하기 위한 음수로서의 0101(2)와 십진수 5를 표현하기 위한 양수로서의 0101(2)은 똑같이 생겼는데,
컴퓨터 내부에서 이진수만 보고 음수인지 양수인지 어떻게 구분할 수 있을까?
실제로 이진수만 봐서는 음수인지 양수인지 구분하기 어렵기 때문에 컴퓨터 내부에서 어떤 수를 다룰 때는 구분하기 위해
플래그
를 사용한다.
이진수의 음수를 표현하기 위해 2의 보수를 취하는 방식은 가장 널리 사용되는 방식이지만, 완벽한 방식은 아니다.
0
이나
2의 n제곱
형태의 이진수에 2의 보수를 취하면 원하는 음수값을 얻을 수 없기 때문이다.
ex. 0000(2) => 1111(2) => 10000(2)
ex. 2의 3제곱 => 1000(2) => 0111(2) => 1000(2)
2의 3제곱을 음수를 표현한 값과 양수로 표현한 값이 같다.
1two13
commented
1 year ago
십육진법
수가 15를 넘어가는 시점에 자리 올림
10, 11, 12, 13, 14, 15를 십육진법 체계에서는 A, B, C, D, E로 표기한다.
이진수를 십육진수로, 십육진수를 이진수로 변환하기 쉽기 때문에 사용한다.
십육진수를 이진수로 변환하는 법
십육진수 한 글자를 4개의 숫자로 구성된 이진수로 변환하고, 그것들을 그대로 이어 붙인다.
이진수를 십육진수로 변환하는 법
이진수를 4개씩 끊고, 끊어 준 4개의 숫자를 하나의 십육진수로 변환하고, 그대로 이어 붙인다.
정보단위
비트(bit)
워드(word)