ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 진법변환 - 음의 10진수를 2진수로 (2의보수)
    학교 2020. 9. 10. 17:09

     

     

    음수표현을 하기 위해 절댓값, 1의보수, 2의보수 개념이 필요하다.

     

    최상위 비트(가장 왼쪽 비트, MSB)로 부호 표현

    • 0: 양수
    • 1: 음수

     

     

    컴퓨터의 음수표현 방법은 크게 3가지이다.

     

    1. 양수 표현에 부호만 바꾸기

    ex) +4 : 0000 0100

         -4 : 1000 0100

     

    2. 1의 보수로 나타내기

    1의 보수: 0은 1로, 1은 0로 바꿔준다.

    ex) -4: 1111 1011

     

    3. 2의 보수로 나타내기

    2의 보수: 1의 보수로 변환 후 +1 해준다.

    ex) -4: 1111 1100

     

     

    1, 2번은 문제가 발생하기 때문에 현재 컴퓨터에서는 2의 보수 표현 방법을 사용한다. 

     

     

     


     2의 보수 만들기

    1. 2의 보수로 표현할 숫자의 크기(절댓값)를 비트로 표현한다.

       ex) -5를 +5의 2의 보수로 표현하려면!

            -5 표기를 위해 |-5| = 5의 비트 표기를 한다.

             5 = 0000 0101

     

    2. 1번 결과의 1의 보수를 구한다.

        ex) 5의 1의 보수 = 1111 1010

     

    3. 2번 결과에 +1을 해준다.

        ex) 1111 1010 + 0000 0001 = 1111 1011

     

    4. 3번 결과가 본래 표현하고자 한 수의 음수 표기이다.

        ex) 1111 1011 = -5

     

     

    2의 보수 해석하기

    2의 보수 만드는 순서를 거꾸로 따라가면 2의 보수를 해석할 수 있다.

     

    1. 현재 2의 보수에서 -1을 해준다.

    2. 1의 보수를 구한다. (다시 1의 보수해주면 원래대로 가겠지!)

    3. 최종 결과에 -(마이너스)를 붙인다.

    4. 2의 보수의 십진표현을 알 수 있다.

     

     

     

    '학교' 카테고리의 다른 글

    [2020-1/자료구조] Lists  (0) 2020.07.19

    댓글

Designed by Tistory.