看板 b96902HW 關於我們 聯絡資訊
※ 引述《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
jimmycool:對,我錯了XD 11/11 23:41
※ 編輯: hikaru4 來自: 140.112.239.188 (11/11 23:41)
hikaru4:XD 也不用刪文啊 11/11 23:42
jimmycool:怕誤導同學QQ 11/11 23:42
hikaru4:話說word length在課本哪裡?我完全沒印象有這東東 糟! 11/11 23:47
jimmycool:不知道在哪裡,不過word length就是我們講的8 bits,16 b 11/11 23:52
jimmycool:its,32 bits電腦這種的吧@@ 11/11 23:52
klchchottf:P.45 11/12 00:44
nypgand1:感恩 11/12 01:08