以前做實驗時,需要操作滑鼠。在emu8086下,滑鼠操作時會出現乙個白色的方塊,在dos下卻顯示不出。一開始以為是masm5在dos下不支援滑鼠。後來經過測試,其實它是支援滑鼠的,只是它的滑鼠指標就是windows系統的指標。
下面是乙個單擊,在單擊處顯示乙個a的例項:
wr macro cha,atr,num ;巨集定義
mov ah,2 ;設定游標
int 10h
mov al,cha ;輸出字元
mov cx,num ;輸出字數
mov bl,atr ;字元屬性
mov ah,9
int 10h ;輸出字元
endm
codes segment
assume cs:codes
start:
mov al,3h ;bios螢幕顯示中斷,256色320*200
mov ah,0h
int 10h
mov ax,0 ;滑鼠復位及取狀態
int 33h
cmp ax,0
jz eend ;不支援滑鼠退出
mov ax,01h
int 33h ;顯示滑鼠指標
pos1: mov ax,03h
int 33h
cmp bx,1 ;按下滑鼠左鍵,向下執行
jnz pos1
mov ax,0003h
int 33h;
cmp bx,1 ;按下滑鼠左鍵,向下執行
jnz eend
mov bl,08h ;獲得座標
mov ax,cx
div bl ;換算成列
mov cl,al
mov ax,dx
div bl ;換行成行
mov ch,al
mov dh,ch
mov dl,cl
wr 'a',0f0h,1
eend:
mov ah,7
int 21h
mov ah,4ch
int 21h
codes ends
end start
8086彙編 資料傳送指令
於ibm pc組合語言程式設計 沈美明 溫冬嬋 編著 負責把 資料,位址或立即數傳送到暫存器或者儲存單元中.1.通用資料傳送指令 mov,push,pop,xchg mov指令在cpu內或cpu和儲存器之間傳送位元組或字,目的運算元不允許使用立即數,也不能用cs暫存器,不允許用mov指令在兩個儲存單...
彙編自動出棧 8086彙編 棧操作
8086彙編 棧操作 棧結構一 說明 棧是一種只能在一端進行插入或刪除操作的資料結構。棧有兩個基本的操作 入棧和出棧。入棧 將乙個新的元素放到棧頂 出棧 從棧頂取出乙個元素。棧頂的元素總是最 棧,需要出棧時,又最先被從棧中取出。棧的操作規則 lifo last in first out,後進先出 二...
8086彙編指令大全 串操作型別
型別 彙編指令格式 功 能運算元說明 時鐘週期數 位元組數串 操 作 類 movsb movsw di si si si 1,di di 1 di si si si 2,di di 2 不重複 18 重複 9 17 rep 不重複 18 重複 9 17 rep 1 1stosb stosw di a...