1)顯示字元
mov ah,01h
int 10h //顯示al對應的字元
2)顯示字串
mov ah,06h
int 10h // 顯示ds:bx=字串首址
3)從鍵盤讀字元(查詢方式,而不是中斷等待)
mov ah,00h
int 16h //輸入的字元放在 al中
3)取鍵盤緩衝區狀態
mov ah,01h
int 16h // al=字元碼,zf=0
4)程式正常退出:
可以為:
mov ah,4ch
int 21h
或者為push ds
mov ax,00h
push ax
....//程式**
ret退出
5)今天做的是8255a並行介面應用實驗,最後的**為:
stack segment stack
dw 64 dup(?)
stack ends
code segment
assume cs:code
start:
//下邊三行是為了ret返回用的,如果沒有呼叫其他函式,這三行也可以不寫
push ds
mov ax,00h
push ax
mov al 82h //即:1000 0010 表示a輸出,b輸入(8255a晶元)
out 63h,al //這裡設定為 控制埠的位址為63h
a1:in al,61h; //設定b為輸入埠位址
out 60h,al;//設定a為輸出埠位址
mov ah,00h//也可以是mov ah,01h,表示查詢那個鍵(pc下的鍵盤鍵)被按下
int 16h
cmp al,51h //這裡51h是大寫"q",的ascii碼,千萬不要用'q',系統不支援的,我就這裡浪費了很多時間
jnz a1
retcode ends
end start
stack segment stack
dw 64 dup(?)
stack ends
code segment
assume cs:code
start:
push ds;
+微機實驗書p100
mov cx,000ah
a1: cmp cx,000h
jnz a2
in al,21h
or al,80h
out 21h ,al
stihlt
a2: sti
jmp a1
irq7:
mov ax,0137;//即是 ah=01, al=37='7'
int 10h
dec cx
mov al,20h ;//發中斷結束命令
out 20h ,al
cliiret
code ends
end start
微機匯程式設計序
又是自學的一學期,呵呵。學到最後也就知道零星半點指令吧,複雜的程式可能還是不怎麼會寫,熟練當然也不敵c了,但是彙編之於嵌入式,往上走肯定少不了遇到,學好還是必要的!此次僅作入門吧。今日所學,明日之用。1 統計正負零的個數 datas segment array db 1,2,1,0,2,0,2,4,...
南郵微機介面彙編實驗2
第二次實驗,名稱 使用者登陸驗證程式的設計 實驗要求 1 執行程式後,介面首先出現自己的學號,例如 b18060701 2 在學號下方輸入登入密碼,密碼長度不超過30個字元。密碼內容不能顯示在螢幕上,要求用字元 替代。3 驗證輸入密碼與事先設定的密碼是否相同,如果密碼正確,給出提示 ok 程式結束 ...
微機原理與彙編實驗 輸出帶顏色的字元
如下 datas segment 此處輸入資料段 datas ends stacks segment 此處輸入堆疊段 stacks ends codes segment assume cs codes,ds datas,ss stacks start mov ax,datas mov ds,ax 此...