1. 108쪽 문제 3번에서 byte 변수를 사용해서 비트로 하면 8자리로 계산하는 건가요?
2. 그런데 왜 8자리를 2진수로 계산하는 건가요?
3. 그리고 NOT을 취했을 뿐인데 왜 다시 2의 보수로 구하는 건가요?
여기서 NOT 연산은 1의 보수랑 같기 때문에 원래 값을 알려면 1의 보수만 구해주면 되는 것 아닌가요?
안녕하세요. 길벗 수험서 운영팀입니다.
1. 108쪽 문제 3번에서 byte 변수를 사용해서 비트로 하면 8자리로 계산하는 건가요?
[답변]
예, 맞습니다.
byte 변수는 정수형 1바이트이므로, 8개의 비트로 표현하기 때문에 8자리로 계산하시면 됩니다.
2. 그런데 왜 8자리를 2진수로 계산하는 건가요?
[답변]
컴퓨터에서 모든 수치들을 (2진)비트로 연산합니다.
또한 1byte라는 의미는 8개의 비트로 이루어진 것을 의미합니다. (기사 필기 내용)
때문에 1byte 비트 연산은 8개의 비트로 2진 연산을 하는 것입니다.
3. 그리고 NOT을 취했을 뿐인데 왜 다시 2의 보수로 구하는 건가요?
여기서 NOT 연산은 1의 보수랑 같기 때문에 원래 값을 알려면 1의 보수만 구해주면 되는 것 아닌가요?
[답변]
NOT 연산의 수행결과 결과값이 음수로 표현되었기 때문입니다.(첫 비트가 1이면 음수, 0이면 양수)
컴퓨터는 음수표현에 2의 보수를 사용하기 때문에, not을 통해 음수로 바뀐 2진 비트를 2의 보수로 변환하여 표시하는 것입니다.
행복한 하루되세요.^^
-
*2018-10-02 11:48:06
안녕하세요. 길벗 수험서 운영팀입니다.
1. 108쪽 문제 3번에서 byte 변수를 사용해서 비트로 하면 8자리로 계산하는 건가요?
[답변]
예, 맞습니다.
byte 변수는 정수형 1바이트이므로, 8개의 비트로 표현하기 때문에 8자리로 계산하시면 됩니다.
2. 그런데 왜 8자리를 2진수로 계산하는 건가요?
[답변]
컴퓨터에서 모든 수치들을 (2진)비트로 연산합니다.
또한 1byte라는 의미는 8개의 비트로 이루어진 것을 의미합니다. (기사 필기 내용)
때문에 1byte 비트 연산은 8개의 비트로 2진 연산을 하는 것입니다.
3. 그리고 NOT을 취했을 뿐인데 왜 다시 2의 보수로 구하는 건가요?
여기서 NOT 연산은 1의 보수랑 같기 때문에 원래 값을 알려면 1의 보수만 구해주면 되는 것 아닌가요?
[답변]
NOT 연산의 수행결과 결과값이 음수로 표현되었기 때문입니다.(첫 비트가 1이면 음수, 0이면 양수)
컴퓨터는 음수표현에 2의 보수를 사용하기 때문에, not을 통해 음수로 바뀐 2진 비트를 2의 보수로 변환하여 표시하는 것입니다.
행복한 하루되세요.^^