<1>p.92에서 3~5번의 답에
3. 0
4. 1
5. 1-A(i-1)을 적으면 안되나요?
어차피 3번에는 0밖에 오지않을테고, 4번에도 마찬가지로 처음 1이나온 자리에는 1을 그대로 집어넣으니까 상관없지 않나요? 5번도 되는지 안되는지 궁금합니다.
의 답변에
변경한 후 수행하면
01010을 입력한다면 10110 이 산출되어야 하는데, 10100 이 산출됩니다.
라고 해주셨는데 전 아무리해도 답이 10110이 나옵니다. 어디가 문제인지 잘 모르겠습니다.
<2>p.100모의고사 1회에서 마지막 반복문 S(Y) ; "x" ; 에서 ;(세미콜론)의 의미가 뭔지 궁금합니다.
답지에 x를 같이 출력한다고 되있는데 왜 같이 출력하고 어떻게해서 x가 숫자 뒤에 오는건지 알고싶습니다.
<3>p102 모의고사4회 DEC=128-DEC 가 왜 성립하는겁니까?
어디서부터가 문제인지 전혀 감이 안잡히네요 ㅠㅠ 도와주세요
안녕하세요.
1)
마지막 5번 괄호를 1-A(i-1)이 아니라 1-A(J)로 하면 교재와 동일하게 산출됩니다.
보내주신 값으로 한 디버깅 과정을 살펴보면 앞서 답변드린 10100이 아니라 11110이 산출됨이 확인되었습니다.
2)
x는 곱하기 기호의 표현입니다.
문제의 프로그램 실행 예시에서
20이 입력되면 2x2x5와 같이 값과 x 기호가 함께 출력이 됩니다.
S(Y)와 x기호를 바로 붙여서 출력하기 위해 ; 으로 연결한 것입니다.
3)
최상위 비트 값이 1인 경우 음수이고 음수인 경우 2의 보수로 표현되었다는 조건에 따라
S(8)에 10001101이 기억되어 있다면 이는 십진수로 -13이라는 의미입니다.
맨 앞은 부호 음수(-)를 의미하고 실제값 1101이 13인 것이죠.
하지만 처리 과정을 통해 10001101이 십진수로 변환하면 DEC에는 141이 저장됩니다.
그래서 이 값을 우리가 알고 있는 13이라는 값으로 변환하기 위한 과정이 필요한데,
그 방법이 표현된 비트 수의 가장 최상위를 1로 만든 값으로 빼주는 것이죠.
즉 8비트 이므로 최상위 비트를 1로 만든 10000000(128)을 빼주는 것입니다.
즉 처리되어 DEC에 기억된 값이 10001101이라면 141입니다. 여기서 10000000인 128을 빼주면
141-128 = 13이 됩니다.
그런 다음 DEC에 (-1)을 곱하여 -13으로 출력을 하는 것이죠.
오늘도 즐거운 하루 되세요.
-
*2018-04-26 09:50:29
안녕하세요.
1)
마지막 5번 괄호를 1-A(i-1)이 아니라 1-A(J)로 하면 교재와 동일하게 산출됩니다.
보내주신 값으로 한 디버깅 과정을 살펴보면 앞서 답변드린 10100이 아니라 11110이 산출됨이 확인되었습니다.
2)
x는 곱하기 기호의 표현입니다.
문제의 프로그램 실행 예시에서
20이 입력되면 2x2x5와 같이 값과 x 기호가 함께 출력이 됩니다.
S(Y)와 x기호를 바로 붙여서 출력하기 위해 ; 으로 연결한 것입니다.
3)
최상위 비트 값이 1인 경우 음수이고 음수인 경우 2의 보수로 표현되었다는 조건에 따라
S(8)에 10001101이 기억되어 있다면 이는 십진수로 -13이라는 의미입니다.
맨 앞은 부호 음수(-)를 의미하고 실제값 1101이 13인 것이죠.
하지만 처리 과정을 통해 10001101이 십진수로 변환하면 DEC에는 141이 저장됩니다.
그래서 이 값을 우리가 알고 있는 13이라는 값으로 변환하기 위한 과정이 필요한데,
그 방법이 표현된 비트 수의 가장 최상위를 1로 만든 값으로 빼주는 것이죠.
즉 8비트 이므로 최상위 비트를 1로 만든 10000000(128)을 빼주는 것입니다.
즉 처리되어 DEC에 기억된 값이 10001101이라면 141입니다. 여기서 10000000인 128을 빼주면
141-128 = 13이 됩니다.
그런 다음 DEC에 (-1)을 곱하여 -13으로 출력을 하는 것이죠.
오늘도 즐거운 하루 되세요.