책 내용 질문하기
산업기사 실기 1권 108p 문제3번
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
108
조회수
39
작성일
2018-07-04
작성자
탈퇴*원
첨부파일
문제 3번에서 왜 ~a가 2의 보수를 하는데 0001 0000이 되나요ㅜㅜ
답변
2018-07-05 13:55:57
안녕하세요. 길벗 수험서 운영팀입니다.
순서대로 풀어보겠습니다.
1. 먼저 15를 이진수로 변환합니다. - 0000 1111
2. not(~)을 적용하여 0은 1로 1은 0으로 변경됩니다. - 1111 0000
3. C나 JAVA는 2의 보수를 사용하여 표현된 것이므로 2의 보수로 변환해야 합니다.
1111 0000(원래 수) -> 0000 1111(1의 보수) -> 0001 0000(2의 보수)
4. 0001 0000을 10진수로 변환하면 16이며, 원래 수(1111 0000)의 맨 앞의 부호 비트가 1이었으므로 음수입니다. 즉 -16이 됩니다.
행복한 하루되세요.^^
-
*2018-07-05 13:55:57
안녕하세요. 길벗 수험서 운영팀입니다.
순서대로 풀어보겠습니다.
1. 먼저 15를 이진수로 변환합니다. - 0000 1111
2. not(~)을 적용하여 0은 1로 1은 0으로 변경됩니다. - 1111 0000
3. C나 JAVA는 2의 보수를 사용하여 표현된 것이므로 2의 보수로 변환해야 합니다.
1111 0000(원래 수) -> 0000 1111(1의 보수) -> 0001 0000(2의 보수)
4. 0001 0000을 10진수로 변환하면 16이며, 원래 수(1111 0000)의 맨 앞의 부호 비트가 1이었으므로 음수입니다. 즉 -16이 됩니다.
행복한 하루되세요.^^