微機顯示程式實驗

2021-09-20 19:56:26 字數 1518 閱讀 2652

今天要交的微機實驗報告分享。

顯示程式實驗

一,實驗目的

1. 掌握在pc機上以十六進製制形式顯示資料的方法。

2. 掌握部分dos功能呼叫使用方法。

二,實驗裝置

pc微機一台

三,實驗內容

一般來說,有很多程式需要顯示輸出提示執行的狀況和結果,有的還需要將資料區中的內容顯示在螢幕上。本實驗要求將指定資料區的資料以十六進製制數形式顯示在螢幕上,並利用dos功能呼叫完成一些提示資訊的顯示。

四,實驗清單

stack1 segment stack ;堆疊段開始

dw 256 dup(?)

stack1 ends

data segment ;資料段開始

mes db 'press any key to exit!',0ah,0dh,0ah,0dh,'$'

mes1 db 'show a as hex:',0ah,0dh,'$'

sd db 'a'

data ends

code segment ;**段開始

assume cs:code,ds:data

start: mov ax,data ;設定ds 暫存器

mov ds,ax

mov dx,offset mes ;取字串首位址,顯示退出提示

mov ah,09h ;在dos 介面顯示字串

int 21h

mov dx,offset mes1 ;取字串首位址,顯示字串

24mov ah,09h

int 21h

mov si,offset sd

mov al,ds:[si] ;把』a』送到al中

and al,0f0h ;取位元組的高4位

mov cl,4

shr al,cl

cmp al,0ah ;判斷是否是a以上的數

jb c2

add al,07h ;大於等於a,數值加7h

c2: add al,30h ;數值加30h,轉換成ascii碼

mov dl,al

mov ah,02h ;將轉換的相應ascii碼在dos介面下顯示

int 21h

mov al,ds:[si]

and al,0fh ;取位元組的低4位

cmp al,0ah

jb c3

add al,07h

c3: add al,30h

mov dl,al ;顯示字元

mov ah,02h

int 21h

key: mov ah,1 ;判斷是否有按鍵按下?

int 16h ;(為觀察執行結果,使程式有控制的退出)

jz key

mov ax,4c00h ;結束程式,退出

int 21h

code ends

end start

四,實驗結果

press any key to exit!

show a as hex:

61

微機介面實驗 數碼管顯示程式詳解

本次講解的針對的是共陰極數碼管,先把原理圖和 放上來 數碼管裡共8個led,由於說明了給定的是共陰極數碼管,即陰極是接在一起的,通過原理圖下方的7407驅動器接在了x1 x6,陽極分別通過1k電阻上拉。所以當x1 x6接8255的io口時,可以通過io口輸出低電平,將陰極拉低。同時8個段選a dp也...

微機實驗 登入介面

程式執行後,提示使用者輸入賬號和密碼,賬號回顯,密碼不回顯,只有賬號和密碼與程式內定的一致時,才提示登陸成功,登入成功後跳轉至歡迎介面。將賬號和密碼先儲存到記憶體中,當使用者輸入賬號或密碼時,使用cmp指令與記憶體中的資料進行比較。比較難的部分是退格鍵,我是這樣實現的,先判斷使用者按下的字元,若為退...

微機介面實驗二 鍵盤顯示控制實驗(翻轉法實現)

掌握8255a控制鍵盤及顯示電路的基本功能及程式設計方法。掌握一般鍵盤和顯示電路的工作原理。設定8255a的c口鍵盤輸入,a口為數碼管段碼輸出。翻轉法的原理其實很簡單 首先行線全部輸出為0,然後查詢哪一列輸入為0 然後翻轉,列線全部輸出為0,查詢哪一行輸入為0 找到行號和列號後,簡單計算就能得到按下...