책 내용 질문하기
정보처리산업기사 p245 10번, p251 26번 문제 질문
도서
2022 시나공 정보처리산업기사 실기
페이지
245,251
조회수
308
작성일
2022-07-23
작성자
탈퇴*원
첨부파일


 

10번 문제는 ~a를 2의 보수로 계산하였고 26번 문제는 ~b를 1의 보수로 계산하라고 되어있는데 이유가 뭔가요?

 

 

 

 

 

 

 

 

답변
2022-07-23 15:05:09

안녕하세요 길벗수험서 운영팀입니다.

 

먼저,

1. not비트 연산은 1의 보수화와 동일하며 10번과 26번 모두에서 수행되었음을 알 수 있습니다. 

2. 2의 보수를 취하는 것은 비트로 된 음수(맨 앞자리 비트가 1인 수)의 값을 알기 위해서 입니다.

 

문제 10번은 a의 값을 not비트 연산하여 맨 앞자리 비트가 1이 되며 음수가 되었고, 이를 출력하기 위해 2의 보수화를 수행했습니다.

 

문제 26번은 b의 값을 not비트 연산하여 맨 앞자리 비트가 1이 되며 음수가 되었으나, 이를 바로 출력하지 않고 다른 값들과 &비트 연산을 수행하면서 맨 앞자리 비트가 0인 양수가 되어 버립니다. 결국 결과값을 출력할 때 음수가 아니므로 2의 보수화를 할 필요가 없게 되죠.

 

행복한 하루되세요 :)

  • 관리자
    2022-07-23 15:05:09

    안녕하세요 길벗수험서 운영팀입니다.

     

    먼저,

    1. not비트 연산은 1의 보수화와 동일하며 10번과 26번 모두에서 수행되었음을 알 수 있습니다. 

    2. 2의 보수를 취하는 것은 비트로 된 음수(맨 앞자리 비트가 1인 수)의 값을 알기 위해서 입니다.

     

    문제 10번은 a의 값을 not비트 연산하여 맨 앞자리 비트가 1이 되며 음수가 되었고, 이를 출력하기 위해 2의 보수화를 수행했습니다.

     

    문제 26번은 b의 값을 not비트 연산하여 맨 앞자리 비트가 1이 되며 음수가 되었으나, 이를 바로 출력하지 않고 다른 값들과 &비트 연산을 수행하면서 맨 앞자리 비트가 0인 양수가 되어 버립니다. 결국 결과값을 출력할 때 음수가 아니므로 2의 보수화를 할 필요가 없게 되죠.

     

    행복한 하루되세요 :)

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.