組合語言 計算表示式的值

2021-09-04 15:47:24 字數 914 閱讀 3725

題目要求:

實現表示式s=(x+4×y)/z,其中x為有符號的位元組資料,z、y為有符號的字資料,結果進行顯示

算的是整除。具體看注釋,自認為比較詳細了

data segment

x db 10

y dw 5

z dw 4

data ends

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

mov ax,4

imul y

;ax=4y

mov bl,x

add ax,bx

;ax=x+4y

cwd;因為除法運算規定除數必須是被除數的一半字長

idiv z

;ax是商,dx是餘數

;因為我們算的是整除,所以只看商就行了

;因為我們就正好需要ax=商,所以不用定,下面的idiv就是用ax中的值除以bl

mov bl,10

idiv bl

;al是商 ah是餘數

;---------------輸出------------------------

mov bl,ah

mov ah,02h

mov dl,al

add dl,'0'

int 21h

mov dl,bl

add dl,'0'

int 21h

mov ah,4ch

int 21h

code ends ;**段結束

end start ;彙編結束

組合語言 計算表示式的值

開啟doxbos 更改masm檔案為123 任意 在資料夾中建立檔案123.asm。在doxbos程式中 輸入mount c d 123 輸入c 開啟123.asm編寫程式 編寫程式,計算表示式 2 x y 65 z的值。要求相除之後的商和餘數分別存放在a,b單元中 設x,y,z和a,b都是16位有...

組合語言的運算子及表示式

2.表示式 符號名稱 運算結果 加法 和 減法差 乘法乘積 除法商mod取餘 餘數shl 按位左移 左移後二進位制數 shr按位右移 右移後二進位制數 符號名稱 運算結果 not非運算 邏輯非結果 and與運算 邏輯與結果 or或運算 邏輯或結果 xor異或運算 邏輯異或結果 符號名稱 運算結果 e...

計算表示式值

試題描述 字尾表示式是指運算子放在兩個運算物件之後,所有計算按運算子出現的順序,嚴格地從左到右進行。注意每個運算元之後都緊跟著乙個 如 3 5 2 7對應的字尾表示式為3.5.2.7.輸入乙個字尾表示式,求表示式的值。注意本題中只出現 三種運算子。輸入一行,乙個字尾表示式。輸出一行,乙個整數,表示字...