• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

3.7 이진수 영상 마지막 연습 문제 답 이거 맞나요??

23.03.15 14:46 작성 조회수 406

1

  • 이진수 0100 1101을 10진수로

    • 답 : 77

  • 10진수 93을 8비트 무부호 정수로

    • 답 : 0101 1101

  • 10진수 -93을 8비트 부호 정수로

    • 답 : 1010 0011

  • 2진수 1010 0010을 무부호 10진수로

    • 답 : 162(8번째자리도 해당 되기 때문)

  • 같은 2진수를 부호가 있는 10진수로

    • 답 : -93(8번째 자리는 부호이기 때문에 제외, 2의 보수 형태로 보기는 어렵기 때문에, 양수로 전환후, - 붙임)

답변 1

답변을 작성해보세요.

1

Soobak님의 프로필

Soobak

2023.03.15

안녕하세요, 답변 도우미 Soobak 입니다. 😀

  • 이진수 0100 1101 을 10진수로

    -> 77 이 맞습니다.

    계산 과정 :

    (0 × 2^7) + (1 × 2^6) + (0 × 2^5) + (0 × 2^4) + (1 × 2^3) + (1 × 2^2) + (0 × 2^1) + (1 × 2^0)

    = (0 × 128) + (1 × 64) + (0 × 32) + (0 × 16) + (1 × 8) + (1 × 4) + (0 × 2) + (1 × 1)

    = 64 + 8 + 4 + 1 = 77

     

  • 10진수 93을 8비트 무부호 정수로

    -> 0101 1101 이 맞습니다.

    계산 과정 :

    (1) 93 ÷ 2 = 몫 46, 나머지 1

    (2) 46 ÷ 2 = 몫 23, 나머지 0

    (3) 23 ÷ 2 = 몫 11, 나머지 1

    (4) 11 ÷ 2 = 몫 5, 나머지 1

    (5) 5 ÷ 2 = 몫 2, 나머지 1

    (6) 2 ÷ 2 = 몫 1, 나머지 0

    (7) 1 ÷ 2 = 몫 0, 나머지 1
    = 0101 1101

     

  • 10진수 -93을 8비트 부호 정수로

    -> 1010 0011 이 맞습니다.
    계산 과정 :

    (1) 93을 8비트 무부호 정수로 변환 ( 위에서 계산한 0101 1101 )

    (2) 2의 보수를 취하여 음수로 표현

    i. 이진수의 비트를 반전시키기 (1을 0으로, 0을 1로) : 1010 0010

    ii. 반전된 이진수에 1을 더하기 : 1010 0010 + 0000 0001 = 1010 0011

     

  • 2진수 1010 0010을 무부호 10진수로

    -> 162 가 맞습니다.

    계산 과정 :

    (1 × 2^7) + (0 × 2^6) + (1 × 2^5) + (0 × 2^4) + (0 × 2^3) + (0 × 2^2) + (1 × 2^1) + (0 × 2^0)

    = (1 × 128) + (0 × 64) + (1 × 32) + (0 × 16) + (0 × 8) + (0 × 4) + (1 × 2) + (0 × 1)

    = 128 + 32 + 2 = 162

     

  • 같은 2진수를 부호가 있는 10진수로

    -> -93 이 아니라 -94 입니다.

    계산 과정 :

    (1) 최상위 비트 확인 -> 1

    (2) 최상위 비트가 1 이므로, 음수임을 확인

    (3) 음수를 변환하기 위해, 2의 보수를 구함

    i. 1010 0010 비트 반전 -> 0101 1101

    ii. 반전된 이진수에 1을 더하기 -> 0101 1101 + 0000 0001 = 0101 1110

    (4) 이제 양수인 0101 1101 을 10진수로 변환

    (0 × 2^7) + (1 × 2^6) + (0 × 2^5) + (1 × 2^4) + (1 × 2^3) + (1 × 2^2) + (1 × 2^1) + (0 × 2^0)

    = (0 × 128) + (1 × 64) + (0 × 32) + (1 × 16) + (1 × 8) + (1 × 4) + (1 × 2) + (0 × 1)

    = 64 + 16 + 8 + 4 + 2 = 94

    (5) 변환 전 원래의 이진수가 음수를 나타냄을 확인했었으므로, 최종 결과에 - 를 붙임

    -> -94

     

     

과제로 주어지는 문제들도 꼼꼼하게 풀이하시며 학습하시는 모습이 멋있으십니다. 👍👍
또 궁금하신 점 있으시면 언제든지 편하게 질문 남겨주세요. 감사합니다. 화이팅! 😀