3808

組合語言問題:執行問題

不是功課~心理的疑惑(D)1.若AL=65

執行下列程式後

其AX的執行結果為何?A.0185H C.0112HB.0145H D.0128HMOV AH

0MOV CL

3SHL AL

CL(問一下AL左移3次

做完才做下一行嗎??)JNC MM (這幾行作的順序不怎麼懂)MOV AH

1MM:NOP(D)1.若AL=38H

執行下列程式後

其BX的執行結果為何?A.0506H C.0056HB.3800H D.0308HMOV AH

ALAND AL

08HMOV BL

ALMOV AL

4SHR AH

CLMOV BH

AHNOP我不懂的地方就是不知道程式是怎麼跑的 = =
第一題--------------JNC MM是Jump if Not Carry它指的是進位旗標(CF)等於0時跳到MM65H SHIFT三次後~會從0110 0101變成011 0010 1000最後一個被SHIFT出去的BIT會被放到CF裡面所以進位旗標會等於1所以JNC MM不直接跳到MM去----------------------MOV AH

AL這行會讓ah = 38hAND AL

08H這行執行AL = AL and 08hAL會變成30hMOV BL

ALBL = ALBL 會變成30hMOV AL

4AL會變成4SHR AH

CL沒有CL的初使值==

arrow
arrow
    創作者介紹
    創作者 小行星列表/3801 的頭像
    小行星列表/3801

    《神魔遮天》

    小行星列表/3801 發表在 痞客邦 留言(0) 人氣()