組合語言(王爽)實驗十五

2021-10-04 12:43:55 字數 1175 閱讀 1240

安裝乙個新的int 9中斷例程 功能:按下a鍵後,除非不鬆開,如果鬆開,就顯示滿螢幕的a,其他鍵照常處理

assume cs:code

stack segment

db 128 dup(0)

stack ends

code segment

start: mov ax,stack

mov ss,ax

mov sp,128

push cs

pop ds

mov si,offset ni9

mov ax,0

mov es,ax

mov di,204h

mov cx,offset ni9e - offset ni9

cldrep movsb

push es:[9*4]

pop es:[200h]

push es:[9*4+2]

pop es:[202h]

climov word ptr es:[9*4],204h

mov word ptr es:[9*4+2],0

stimov ax,4c00h

int 21h

ni9: push ax

push es

push bx

push cx

mov bx,0

mov es,bx

pushf ; call bios origin int9

call dword ptr es:[200h]

in al,60h

cmp al,9eh ; 如果不是斷碼就不顯示

jne ni9r

mov bx,0b800h

mov es,bx

mov bx,0

mov cx,2000 ; 一頁2000個字元

lp: mov byte ptr es:[bx],41h

add bx,2

loop lp

ni9r: pop cx

pop bx

pop es

pop ax

iret

ni9e: nop

code ends

end start

原文:王爽 《組合語言》 實驗 15

組合語言 《組合語言》王爽 實驗一

從 1000 0 開始寫入命令 a 1000 0 mov ax,4e20 add ax,1416 mov bx,2000 add ax,bx mov bx,ax add ax,bx mov ax,001a mov bx,0026 add al,bl add ah,bl add bh,al mov a...

組合語言 王爽 實驗4

這學期在學彙編,沒怎麼自己動手程式設計過,結果到了中期編不出程式來,實在太尷尬了 特此來補各個實驗。4 11 0 200 0 20b 為什麼等同於 0020 0 0020b?0 200 0x16h 200 00200h 所以拆分成不同的形式即可轉換 assume cs code code segme...

《組合語言》 王爽 實驗11

題 編寫乙個子程式,將包含任意字元,以0結尾的字串中的小寫字母轉變成大寫字母,描述如下。名稱 letterc 功能 將以0結尾的字串中的小寫字母轉變成大寫字母。引數 ds si指向字串首位址。如題,任意字元,就得考慮一些其他字元,這就需要劃分乙個範圍,就是取出的字元應該在小寫字母的ascii碼範圍內...