2016 시나공 정보처리기사 필기 책을 보는 가운데에 궁금점 해결차, 질문드립니다.
1.페이지 2-69장, 8번 문제에 해밍 코드 방식에 의하여 구성된 코드가 16비트인 경우 패리티 비트에 왜 16이 포함되어 있는건가요?
>> 해답지에서는 당연하다듯이 패리티비트가 1, 2, 4, 8, 16이라고 하는데, 저는 16비트가 왜 포함되는지 궁금합니다. 왜냐하면 16비트가 포함될 경우 16비트에 위치한 패리티 비트는 짝, 홀수를 참조한 부분이 없어진다고 생각하기 때문입니다. 만약, 이 문제에서 패리트 비트로서 16비트가 가능하다고 한다면, 페이지 2-70장 17번 문제 "짝수 패리티를 이용하여 BCD코드 1001에 대한 해밍 코드를 구하면?"라는 문제에서는 왜 8번째 비트를 패리티 비트로 포함시키지 않는 걸까요?
2.페이지 2-73장 29번 문제에서 Bias64일 때의 범위를 해답지에서는 2^63 ~ 2^-64 라고 하는데, 왜 범위가 이렇게 나오는 건가요?
>> 마냥 암기해야되는지, 아니면 범위가 결정되는 규칙이 따로 있는지 궁금합니다. 마찬가지로 Bias127 일때의 범위도 왜 2^128 ~ 2^-127 로 결정되는지 궁금합니다.
3.페이지 2-72장 26번 "2진수 감산에 대한 틀린 것은?" 문제에서 4번에 해당하는 "피감수보다 감수의 값이 더 클 때에는 연산 결과(2의 보수 사용)의 재보수를 구해야 한다." 라는 항목이 왜 틀린것이 아닌지요?
>> 그 예로 피감수보다 감수의 값이 더 큰 다음과 같은 연산을 해보면, 4 - 6 = 0100 + (01010) = 10010 = -2가 되므로, 재보수를 할 필요가 없는데, 왜 재보수를 해야 한다고 하나요?
4.페이지 2-73장 40번 "다음중 IEEE 754에 대한 설명으로 옳은 것은?" 문제에서 "가수는 부호 비트와 함께 부호화 - 크기로 표현된다." 가 왜 맞는 건가요? 부호비트, 지수부, 가수부로 구성되고, 가수부는 소수점 이하의 부분을 나타내기만 하는 것이 아니었나요?
안녕하세요.
1)
2-70쪽 17번 문제에 최종적으로 만들어질 해밍코드에 대한 비트 수가 주어지지 않았습니다.
이런 경우 보기로 제시된 비트를 보고 그에 맞게 산출하여 변환하면 되는데, 이 문제의 보기는 모두 7비트로 표현되어 있습니다.
그러므로 7비트 내에서 해밍코드의 패리티비트 위치를 살펴보면 1, 2, 4가 속합니다.
2)
여러 사람이 일정한 규칙을 가지고 공통된 작업을 할 수 있도록 표준화한 규격입니다.
64비트를 사용할 경우에는 64바이어스법으로 기본 베이스를 1000000으로 합니다.
127비트를 사용할 경우에는 127바이어스법으로 기본 베이스를 01111111으로 합니다.
기본 베이스에 지수의 값을 더해서 표현하는 것이죠.
64바이어스 표현 범위 : 2^63 ~ 2^-64
127바이어스 표현 범위 : 2^-127 ~ 2^128
표현 범위는 해설에서의 설명과 같이 소수 이상은 기본 베이스에 더하고, 소수 이하는 기본 베이스에서 빼는 것인데
기본베이스 64인, 즉 100 0000 인 경우에는 지수가 64를 표현하면 100 0000 + 100 0000 = 1000 0000으로 자릿수가 늘어나 Overflow가 발생하여 표현할 수 없습니다.
기본베이스 127인, 즉 0111 1111인 경우에는 지수가 -127인 경우 0111 1111 - 0111 1111 = 0으로 표현이 가능하나
기본베이스 127인, 즉 0111 1111인 경우에는 지수가 -128인 경우 0111 1111 - 1000 0000으로 빼는 값이 커져 뺄 수 없으므로 Underflow가 발생하여 표현할 수 없습니다.
즉 표현할 수 있는 값에 따라 표현 범위가 정해지는 것입니다.
3)
컴퓨터에서는 뺄샘은 감수의 보수를 더하는 방식으로 진행됩니다.
4-6의 경우 4+(6의 2의 보수)로 계산됩니다.
그러므로
0100 <- 4
+ 1010 <- 6의 2의 보수
-------
1110 = 14 <- 내부적인 계산 결과
구해진 결과 14(1110)에 다시 2의 보수를 취해야 원하는 결과가 산출됩니다.
1110의 2의 보수는 0010으로 2가 되며 2는 2의 보수였으므로 음수를 취해 -2로 출력됩니다.
이와 같이 결과에 재보수가 필요하게 됩니다.
4)
여기서 가수는 2-59쪽 예제 +36.125에서
+0.100100001 × 2^6 중
앞의 부호와 함께 부호화된 크기로 구분된다는 의미입니다.
문구가 명확하지 않아 애매할 수 있지만 나머지 보기 3개가 명확히 틀린 것이므로 2번이 답이 된 문제입니다.
자주 출제되는 내용은 아니니 이런 이유로 답이 되었구나 정도만 알아두고 넘어가세요.
오늘도 즐거운 하루되세요.
-
*2017-08-22 10:21:08
안녕하세요.
1)
2-70쪽 17번 문제에 최종적으로 만들어질 해밍코드에 대한 비트 수가 주어지지 않았습니다.
이런 경우 보기로 제시된 비트를 보고 그에 맞게 산출하여 변환하면 되는데, 이 문제의 보기는 모두 7비트로 표현되어 있습니다.
그러므로 7비트 내에서 해밍코드의 패리티비트 위치를 살펴보면 1, 2, 4가 속합니다.
2)
여러 사람이 일정한 규칙을 가지고 공통된 작업을 할 수 있도록 표준화한 규격입니다.
64비트를 사용할 경우에는 64바이어스법으로 기본 베이스를 1000000으로 합니다.
127비트를 사용할 경우에는 127바이어스법으로 기본 베이스를 01111111으로 합니다.
기본 베이스에 지수의 값을 더해서 표현하는 것이죠.
64바이어스 표현 범위 : 2^63 ~ 2^-64
127바이어스 표현 범위 : 2^-127 ~ 2^128
표현 범위는 해설에서의 설명과 같이 소수 이상은 기본 베이스에 더하고, 소수 이하는 기본 베이스에서 빼는 것인데
기본베이스 64인, 즉 100 0000 인 경우에는 지수가 64를 표현하면 100 0000 + 100 0000 = 1000 0000으로 자릿수가 늘어나 Overflow가 발생하여 표현할 수 없습니다.
기본베이스 127인, 즉 0111 1111인 경우에는 지수가 -127인 경우 0111 1111 - 0111 1111 = 0으로 표현이 가능하나
기본베이스 127인, 즉 0111 1111인 경우에는 지수가 -128인 경우 0111 1111 - 1000 0000으로 빼는 값이 커져 뺄 수 없으므로 Underflow가 발생하여 표현할 수 없습니다.
즉 표현할 수 있는 값에 따라 표현 범위가 정해지는 것입니다.
3)
컴퓨터에서는 뺄샘은 감수의 보수를 더하는 방식으로 진행됩니다.
4-6의 경우 4+(6의 2의 보수)로 계산됩니다.
그러므로
0100 <- 4
+ 1010 <- 6의 2의 보수
-------
1110 = 14 <- 내부적인 계산 결과
구해진 결과 14(1110)에 다시 2의 보수를 취해야 원하는 결과가 산출됩니다.
1110의 2의 보수는 0010으로 2가 되며 2는 2의 보수였으므로 음수를 취해 -2로 출력됩니다.
이와 같이 결과에 재보수가 필요하게 됩니다.
4)
여기서 가수는 2-59쪽 예제 +36.125에서
+0.100100001 × 2^6 중
앞의 부호와 함께 부호화된 크기로 구분된다는 의미입니다.
문구가 명확하지 않아 애매할 수 있지만 나머지 보기 3개가 명확히 틀린 것이므로 2번이 답이 된 문제입니다.
자주 출제되는 내용은 아니니 이런 이유로 답이 되었구나 정도만 알아두고 넘어가세요.
오늘도 즐거운 하루되세요.