10진수와 2진수로 이루어진 수

 

2진수와 16진수의 관계

2진수를 4개씩 끊어서 16진수로도 표현할 수 있다.

 

 

대략적인 큰수의 자리계산

 

2진수, 10진수 계산

 

Signed and Magnitude Numbers : 

sign( 0 or 1)      

사인비트에서 최상단 즉 첫번째 칸은 양수(0) or 음수(1)로 사용한다.

나머지 첫번째 칸을 뺀 나머지 n-1비트는 magnitude로 할당된다.

ex) 8비트에서 최대 양수값은 0~255 : 2^7-1 값을 뽑을 수 있다. 

음수는 -127도 표현가능하고 -128도 표현가능하다. 왜 그럴까? (끝까지 보면 알수있음)

 

 

양수 : Positive Binary Numbers에서는 10진법에서 쓰고 "position numbering systems : 자리수 규칙" 처럼

그냥 그대로 쓰면 된다.

음수 : Negative Binary Numbers에서는 상황이 달라진다.

 

방법은 3가지다.

1. Sign-and-Magnitude Representation(바로 위에서 배운 비트 표기법)

2. 1's Complement : 1의 보수

3. 2's Complement : 2의 보수

 

 

1. Sign-and-Magnitude Representation

2진법 체계를 사인-매그니튜드 표기법으로 표현하기

-Magnitude 표기법 : (n-1비트)은 바로위에 "position numbering systems : 자리수 규칙" 을 지키면 된다.

-맨 앞에 부호 비트 : Sing은 양수면 0, 음수면 1로 표기한다.

ex) 4bit에서의 예시

0101 = 5

1101 = 5

MSB     LSB

MSB : Most-Significant-Bit

LSB : Least-Significant-Bit

하지만 컴퓨터는 이 표기법을 불편해한다.

왜 불편해 할까?

양수끼리의 계산법은 Sign은 0으로 치고 나머지는 자리수 계산법을 해준다.

음수끼리의 계산법은 Sign이 둘다 1이라면(AND)의 조건을 붙여서 계산해준다.

 

Sign비트가 다른 비트끼리의 계산은??

7 - 2 --> 7 + (-2) 으로 변환한다.

Magnitude의 영역은 양, 음수의 개념이 없고 "크기의 절대값"이기 때문에 큰 값에서 작은 값을 빼야한다.

만약, 두 비트의 부호가 다른경우 둘 중에 Magnitude가 큰 값에서 작은 값을 빼고, 큰 값의 부호를 가져 와서 쓴다.

 

2. 1's Complement

2진수로 이루어진 4비트에서 음수를 취할때, 1의 보수를 사용하는방법은

0을 1로, 1을 0으로만 바꿔주면 된다. ex) 5=0101, -5=1010

하지만 1의 보수를 이용하여 정확한 값을 표출할려면 계산 후에 +1을 해줘야 결과 값이 나온다.

ex) 3 + (-2) = 1 에서의 1의 보수 계산법

0011 : 3

1101 : -2 (2=0010, 음수이고 1의 보수를 취해주면 -2=1101)

-----------

10000 이 나온다.

4비트니까 맨 앞에 1은 오버플로우로 간주하기 때문에 사용하지 않고,

0000이 나오고, 1의 보수계산법이기 때문에 +1을 해주면

0001로 1이라는 결과 값이 나온다.

1의 보수의 다른 예시들

3. 2's Complement

2의 보수 정의

1의 보수 계산법은 결과 값에 +1을 해서 정확한 값을 알아냈는데,

2의 보수 계산법은 결과 값이 아닌, 1의보수를 취한 K값에 +1 해서 바로 정확한 값을 알아내는 것이다.

ex) 3 + (-2) = 1 에서의 1의 보수 계산법

0011 : 3

1110 : -2 (2=0010, 음수이고. 1의 보수를 취해주면 -2=1101, 2의 보수는 1의 보수의 +1 이니 -2=1110)

-----------

10001 이 나온다.

4비트니까 맨 앞에 1은 오버플로우로 간주하기 때문에 사용하지 않기 때문에 0001 = 1 이라는 결과 값이 나온다.

2의 보수 여러가지 계산(편한 방법 쓰면 된다.)

 

'Study > Digital Logic Design' 카테고리의 다른 글

논리회로설계 3-2  (0) 2022.03.22
논리회로설계 3-1  (0) 2022.03.22
논리회로설계 2-1  (0) 2022.03.21
논리회로설계 1-2  (0) 2022.03.21
논리회로설계 1-1  (0) 2022.03.21

+ Recent posts