求詳細解釋組合語言求大神詳細解釋每一句組合語言的意思L1pushcxmovcx300L

2021-03-07 01:09:57 字數 1361 閱讀 6275

1樓:匿名使用者

你看一看這個地址的內容就知道這段程式是幹什麼了:

程式的功能就是在螢幕上劃豎線。

ah=0ch/int 10h 是在繪圖模式中顯示一點 ( 也就是寫入點像,write graphics pixel ),而 ah=0dh/int 10h 則是讀取點像 ( read graphics pixel )。

寫入時,要寫入位置 x 座標存於 cx 暫存器,y 座標存於 dx 暫存器,顏色存於 al 暫存器。和文字模式相同,螢光幕上的 y 座標是最上面一列為零,越下面越大,x 座標則和數學的定義相同。cx、dx、al 值之範圍與顯示模式有關。

2樓:可軒

l1: push cx ;;cx 值進棧保護

mov cx,300 ;;cx ←(列號)x座標初值300

l2: mov ah,0ch ;;bios子程式功能號

mov al,12 ;;al←畫素值12

int 10h ;;呼叫bios子程式,在指定座標位置繪點

loop l2 ;;迴圈,轉l2,當cx值遞減至0則結束迴圈

pop cx ;;出棧,內容送回cx

inc dx ;;(行號)y座標 dx +1

loop l1 ;;迴圈,轉l1,當cx值遞減至0則結束迴圈

求大神詳細解釋每一句組合語言的意思 l1: push cx mov cx,300 l

3樓:匿名使用者

l1: push cx ;cx的值壓入堆疊儲存,它的數值表示總共畫多少行

mov cx,300 ;cx=300,意思是迴圈300次,在螢幕上每行畫出300個點

l2:mov ah,0ch ;ah=0ch,int10h的0c號功能是寫一個畫素點

mov al,12 ;al=12 ,表示顏色

int 10h ;呼叫中斷 int 10h 寫一個畫素點

loop l2 ;迴圈,共畫cx=300個點

pop cx ;從堆疊中彈出cx

inc dx ;cx加一 ,換行,每行再畫300個點

loop l1; ;迴圈

組合語言中的問題求高手解,組合語言中的一個問題求高手解

mov ax,a cmp ax,b bnz l 執行else mov bx,0 mov d,ax jmp ll l ll if的下一條語句復 bnz 標號制 若上一條指令執行的結果非零,就跳到標號執行他是判斷flag暫存器的zf位,若結果不為0,則 跳轉到標號處 組合語言程式的一道題。求高手解答 你...

求會的解釋,求大神的詳細解釋

n是自然數 那2n就是整數 2n 1就是奇數 那任意奇數和偶數相加減 2 n a 1 2n 2 n a 1 1那就是奇數 1 減法也是同理 兩個偶數相加 2 n a 2n 2 n a 1 那還是偶數 2 1到100是連續的100個自然數 有50個奇數1,3,5,7,9.99 50個偶數2,4,6,8...

怎樣用組合語言求 X Y Z X的值啊

x dd y dd z dd 假設已經定義了已經賦值了 mov eax,x mul y sub eax,z xor edx,edx div x 經過以上後 eax裡放了結果 組合語言直接寫可以這樣 不過如果是高階語言編譯後產生的,肯定不是這樣,100 不是這樣的如果x y z不是dword型別要先統...