組合語言中什麼是立即數

來源:魅力女性吧 1.48W
組合語言中什麼是立即數

通常把在立即定址方式指令中給出的數稱為立即數

立即數可以是8位、16位或32位,該數值緊跟在操作碼之後。

如果立即數為16位或32位,那麼,它將按"高高低低"的原則進行儲存。

下面以ARM彙編編譯器為例:

立即數方式:每個立即數由一個8位的常數迴圈右移偶數位得到。其中迴圈右移的位數由一個4位二進位制的兩倍表示。如果立即數記作<immediate>,8位常數記作immed_8,4位的迴圈右移值記作rotate_imm,則有:

<immediate>=immed_8迴圈右移(2*rotate_imm)

這樣並不是每一個32位的常數都是合法的立即數,只有能夠通過上面構造方法得到的才是合法的立即數。

熱門標籤