作者hikaru4 (光)
看板b96902HW
標題Re: [問題] 周一百計概
時間Sun Nov 11 23:40:32 2007
※ 引述《jimmycool (北七)》之銘言:
: 不知道是不是這樣,請高手指教:
: 16:00001000 00000000 00000011
: 00001是載入數值,之後的0是指載入到A regisiter,00則是
: 指直接用IR裡面存的值計算(call by value?)
: 所以這行就是把00000000 00000011存到A regisiter裡面,
: 所以A regisiter裡面自然就是這個值了。
: 17:00001001 00000000 00000011
: 不一樣的地方只有Addressing mode specifier的部份,這裡是指
: 「00000000 00000011這個記憶體位置的值」(call by address?)
這裡好像有點怪怪的 是我誤會語意嗎?
我的理解是 從00000000 00000011 這個記憶體位置"開始"讀值
而 A regisiter 的長度是 16 bits 所以他會讀
0003 0004 這兩個位置的值(每格記憶體 8bits)
: 根據題目上面就是0003這裡,值是FF也就是11111111。
0003 0004 裡面是 FF 00 也就是 11111111 00000000
下面有用到讀取記憶體的也是同上
: 18:00001001 00000000 00000001
: 00011000 00000000 00000001
: 00011是把值加到該regisiter上的意思,所以這兩行就是「把0001
: 上的值(A2,也就是10100010)存到A裡面,再加上1」,A裡面就是
: 00000000 10100011了。
所以這裡是讀 A2 11 也就是 10100010 00010001
然後加上 00000000 00000001
等於 10100010 00010010
: 19:跟18太像了,跳過。
: 20:00001001 00000000 00000011
: 00100001 00000000 00000010
: 第一行跟17.一模一樣,就是把11111111存到A裡。00100是和oprend
: 做減法,這裡oprend是位在0002的11也就是00010001,11111111扣掉
: 他剩下11101110,也就是A做完兩道instruction的值了。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.239.188
1F:推 jimmycool:對,我錯了XD 11/11 23:41
※ 編輯: hikaru4 來自: 140.112.239.188 (11/11 23:41)
2F:推 hikaru4:XD 也不用刪文啊 11/11 23:42
3F:→ jimmycool:怕誤導同學QQ 11/11 23:42
4F:推 hikaru4:話說word length在課本哪裡?我完全沒印象有這東東 糟! 11/11 23:47
5F:推 jimmycool:不知道在哪裡,不過word length就是我們講的8 bits,16 b 11/11 23:52
6F:→ jimmycool:its,32 bits電腦這種的吧@@ 11/11 23:52
7F:推 klchchottf:P.45 11/12 00:44
8F:推 nypgand1:感恩 11/12 01:08