1樓:海獅
一樓的第一句是正確
cpu要找的資料就在命令中,是指令的一部分,比如mov al,0fh下面的措辭不當:
它與**一起存於**段,這樣的資料稱為立即數,或者直接運算元。
應當改為:
立即數本身是**的一部分,在**段中可以找到。
立即數的限制很多,而且速度很慢,不是很推薦。
例如:mov ax,0
往往寫成
xor ax,ax
後者所佔空間,速度都有很大提升。
反正個人認為,組合語言學習一下,瞭解一下硬體原理。
一般的人(少於10年彙編經驗)基本上寫出的彙編**不如用c語言。
彙編往往的意義就是比c語言更快,更小。但是絕大多數人做不到。
比如說,eax=eax*25
這個用lea指令會比乘法快很多,但是究竟有多少人懂呢?
2樓:匿名使用者
立即數---跟在指令後面的數值運算元,故放於**段中,cpu不需要訪問資料段就可以取到該數值。
3樓:匿名使用者
可以這樣理解,
cpu要找的資料就在命令中,是指令的一部分,比如mov al,0fh。它與**一起存於**段,這樣的資料稱為立即數,或者直接運算元。
立即數使用注意的兩點:立即數的位數不確定,不能用於但操作指令。
不能作為目的運算元,
4樓:納蘭旖兒
add al,1
這個1就是立即數- -
add al,bl
這個al,bl是運算元- -!
5樓:匿名使用者
說簡單了就是編寫時直接寫出的數叫作立即數
組合語言中 立即數 究竟是個什麼東東,時而可以代表
6樓:永恆
立即數就是常數,彙編時嵌入到**段中,不佔用資料段的空間。
組合語言中什麼是立即數,彙編立即運算元有哪些
立即數 一個立即數是一塊資料儲存作為指令本身,而不是在一箇中的一部分內容儲存器位置或寄存。器。立即值通常用於載入值或對常量執行算術或邏輯運算的指令。概述 在大多數指令集架構下,各種指令也可以對常量值執行操作。例如,考慮一個可以新增兩個寄。存器並將結果儲存在第三個暫存器中的isa 新增 r3,r2,r...
組合語言和反彙編的區別,學習組合語言有什麼好處
反彙編是分析已經有的程式的過程。就是看這些程式的彙編 看看這些程式是怎麼執行的。因為是逆向過程,所以加了反字。學習組合語言有什麼好處 組合語言更解決計算機的底層,彙編源程式執行效率高。一些高階語言都是先轉成彙編然後再轉成機器語言的。瞭解彙編可以幫組更好的瞭解高階語言,設計演算法啥的。如果你要是搞硬體...
組合語言的ADC和ADD怎麼理解
add是正常的加 adc是正常加,但是要帶近位的,比如你現在要加4位的16進位制,而且加的是前兩位的值,但是後兩位相加的值有進位,所以你就要把進位也加上去 crackme資源 add oprd1,oprd2 加法運算.oprd1 oprd2 adc oprd1,oprd2 帶進位加法運算.oprd1...