작성
·
281
1
[9장] signed에 대한 질문
맛비님 안녕하세요, 9장 강의를 듣고 질문사항이 생겨서 올립니다.
signed a= 4'b1000 라는 변수가 있을때 해당 값은 -8이라고 알고 있습니다.
이때 궁금한 점은 2의보수를 취할때 MSB도 1->0 or 0->1로 바꿔져야 하는지 의문입니다.
답변 1
0
++ 추가 질문이 생겨 여쭤봅니다.
initial 구문 안에 correct에 연산 결과를 대입하는 부분이 이해가 안가 글 남기게 되었습니다.
a라는 변수에는 '15'라는 양수 값이 담겨있고 signed로 type casting을 위해 앞에 부호 '0'을 붙여 a -> 5'b01111 이 된것을 확인했습니다.
하지만 b라는 변수는 '-8'이라는 음수 값이 담겨 -> 4'b1000 임을 확인했습니다.
이때 correct 라는 변수는 5bit이기 때문에 b변수를 부호 확장 시키면 5'b11000이 됩니다.
correct = 01111
11000+ = 6'b100111 carry가 발생하여 6bit가 되는데 앞에것을 버려주면 되는지 궁금합니다.
좋은 하루 되십시오.
correct = 01111
11000+ = 6'b100111 carry가 발생하여 6bit가 되는데 앞에것을 버려주면 되는지 궁금합니다.
저는 correct 가 이렇게 계산 되네요. (00111 인데요..?)
저도.. 학업을 끝낸지 오래라... ㅎㅎ 아마 저보다 잘 알고계실겁니다.
자유롭게 시뮬레이션 할 수 있는 모든 환경을 드렸고요.
연산관련 궁금증은 직접 코드를 돌려보시면 좋을 것 같아요.
즐공하세요 :)
질문 드리고 오랜만에 책을 다시 보니 방법이 잘 설명되어있어서 첨부합니다.
답장 감사드립니다.