1樓:夜隱霜華
說程式的功能吧:將n1和n2拆開重新裝配後再螢幕上顯示
2樓:匿名使用者
程式共有5段組成,第一段是為整個程式定義堆疊段、資料段和**段,第二三四段是**段,無非是一些資料傳遞、算術運算、邏輯運算指令,最後一段結束程式,下面就簡單解釋幾句典型程式
mov ah,n1//就是將數值n1賦給ahand ah,0f0h//就是將ah與0xf0相與add ah,30h//就是將ah與0x30相加然後將計算結果儲存在ah中
3樓:匿名使用者
stack segment stack 'stack'
dw 32 dup(0)
stack ends
data segment
n1 db 56h
n2 db 34h
n3 dw 2 dup(0)
data ends
code segment
start proc far
assume ss:stack,cs:code,ds:datapush ds;壓入返回段地址
sub ax,ax
push ax;壓入返回偏移地址相當於mov ah,4ch int 21h
mov ax,data
mov ds,ax
mov ah,n1;取ah=56h
and ah,0f0h;相與保留高位得到50hmov al,n2;取al=34h
and al,0fh;相與保留地位得到04hor ah,al;相或合併ah高4位和al第4位得到結果放入ah=54h
mov al,ah;al=ah=54h
mov cl,4
shr ah,cl;ah右移4位結果ah=5hadd ah,30h;取ah的ascii碼ah=35hand al,0fh;保留al低4位al=4hadd al,30h;取al的ascii碼al=34hxor bx,bx ;bx=0
xchg ah,al;交換ah與al值
mov n3[bx],ax;存入n3
mov n3[bx+2],'$h';存入『h』
mov dx,offset n3;輸出結果mov ah,9
int 21h
retstart endp
code ends
end start
請問這段組合語言每句話的意思
name 4.15 data segment a dd data ends 前三行定義一個資料段,a為資料段首地址,dd是偽 表示雙字操作。code segment 定義一個 段 assume ds data,cs code 指定data在ds段中,code指向cs段 start mov ax,da...
簡單的組合語言,求解釋
發個程式給你研究,這是我自己寫的這裡有小於100的顯示方法,如果還需要大於100的小於65535的我也有顯示,需要的話給我說聲。data segment 定義資料段。data ends code segment 定義 段。assume cs code,ds datastart mov ax,data...
組合語言是什麼?組合語言是一種什麼語言?
組合語言,是和機器語言同一層次的程式語言。組合語言的主體,是機器語言的助記符,因此,就比機器語言易懂,好記。組合語言中,還有一些偽指令,都是英文單詞,也不難。用組合語言編寫程式,也就是用機器語言程式設計,完全是直接對 cpu 進行程式設計。用組合語言編寫程式,需要對計算機本身,有全面的瞭解,所以,難...