기출문제를 풀다보니 이해가 안가는 문제가 발생했습니다
일단 제어단어에 관한 문제인데요
기 출문제에 존재하는 이 문제는
일단 레지스터가 40개 있으니
디코더와 멀티플렉서 필드인 A,B,D 필드에 필요한 비트는
(2의 4제곱 = 16, 2의 5제곱 = 32, 2의 6제곱 64)
40개의 레지스터를 처리하려면 제어단어의 A ,B ,D필드는 각각 6비트씩 필요하다.
ALU연산을 위한 필드인 F는 20개의 연산을 처리하기 위해서는 5비트가 필요하다.
마지막으로 시프터의 12개의 연산을 처리하기위해서 H필드는 4비트가 필요하다는 결론이다
그럼 이 비트를 전부 더하면 A[ 6 ] + B[ 6 ] + F[ 5 ]+ H[ 4 ] +D[ 6 ] = 27 비트가 필요하단 말이 된다.
정답을 확인해보면 맞았다.
다른 문제를 풀어보자
요건 2017년에 나왔던 기출문제인데
내용도 거의 비슷한걸 보니 매우 중요한 문제인것 같다 아마.. 이번 시험에도 나올확률이 높다는 말이겠지
똑같이 계산해보자
레지스터가 15개이면 A,B,D필드에는 4비트가 필요하고
ALU처리작업에 21개의 연산 이 필요하니 5비트가 필요하다
시프터 연산작업에 3비트가 필요하다는 말이며
이걸 계산하게되면 4 + 4 + 5 + 3 + 4 = 20비트가 정답으로 보인다
정답을 확인해보니 20비트가 정답이 맞다.
이제 머리속에 정리가 되는 기분이다.
마지막으로 한개만 더해보자
일단 레지스터 세트가 36개 존재하니 A,B,D필드는 각각 6비트씩 필요하고 ALU연산을 위한 F필드는 19개의 연산이 필요하니 5비트가 필요하다. 시프터의 15개 연산을 위해 F필드에는 4비트가 필요하다
이를 계산하면 6 + 6 + 5 + 4 + 6 = 27 정답은 27이된다.
이제 감이 잡혔다.
스테픈도 완료했다.