《微機(jī)原理與接口通信》之匯編語(yǔ)言程序設(shè)計(jì)試驗(yàn)指導(dǎo)_第1頁(yè)
《微機(jī)原理與接口通信》之匯編語(yǔ)言程序設(shè)計(jì)試驗(yàn)指導(dǎo)_第2頁(yè)
《微機(jī)原理與接口通信》之匯編語(yǔ)言程序設(shè)計(jì)試驗(yàn)指導(dǎo)_第3頁(yè)
《微機(jī)原理與接口通信》之匯編語(yǔ)言程序設(shè)計(jì)試驗(yàn)指導(dǎo)_第4頁(yè)
《微機(jī)原理與接口通信》之匯編語(yǔ)言程序設(shè)計(jì)試驗(yàn)指導(dǎo)_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——《微機(jī)原理與接口通信》之匯編語(yǔ)言程序設(shè)計(jì)試驗(yàn)指導(dǎo)

基礎(chǔ)試驗(yàn)一、匯編過程與DEBUG調(diào)試試驗(yàn)

一、試驗(yàn)?zāi)康模?/p>

1.熟悉DEBUG常用命令。

2.熟悉匯編指令及其尋址方式和對(duì)標(biāo)志位的影響。

3.學(xué)會(huì)用匯編語(yǔ)言設(shè)計(jì)、編寫、調(diào)試和運(yùn)行程序的方法。二、試驗(yàn)內(nèi)容:

1.使用文本編輯程序建立名為B.ASM的源程序文件,并輸入下面程序內(nèi)容,然后存盤。DATASEGMENTX

DD99AABBCCH

YDD55667788HZDD?DATAENDSCODESEGMENT

ASSUMECS:CODE,DS:DATA

AX,DATADS,AXDI,OFFSETZAX,WORDPTRXAX,WORDPTRY[DI],AX

AX,WORDPTRX[2]

START:MOV

MOVMOVMOVADDMOVMOV

EXIT:CODE

ADCMOVMOVINTENDSEND

AX,WORDPTRY[2][DI+2],AXAX,4C00H21H

START

問:

1)程序的功能是什么?

2)數(shù)據(jù)標(biāo)號(hào)X、Y、Z的地址(偏移量)分別是多少?

3)程序的各條語(yǔ)句中源操作數(shù)和目的操作數(shù)分別是什么尋址方式?4)標(biāo)號(hào)EXIT后面的2條指令有什么功能?

5)在在標(biāo)號(hào)地址EXIT處設(shè)置斷點(diǎn),在程序暫停時(shí)從相應(yīng)內(nèi)存單元檢查Z的內(nèi)容,看結(jié)

果是否正確。

2.編寫程序,用8086指令實(shí)現(xiàn)雙字操作數(shù)X的內(nèi)容循環(huán)左移N位。編程提醒:

1)假使要對(duì)雙精度數(shù)(雙字)DX:AX循環(huán)左移1位,可用如下指令段:SALAX,1;將AX內(nèi)容算術(shù)左移1位,最低位補(bǔ)0,最高位移至進(jìn)位位CFRCLDX,1;將DX內(nèi)容帶進(jìn)位循環(huán)左移1位,原CF內(nèi)容移至DX最低位,

;DX最高位移至CF

ADCAX,0;CF內(nèi)容即原DX最高位加至AX最低位2)假使要對(duì)雙精度數(shù)(雙字)DX:AX循環(huán)左移N位,則將上述程序段循環(huán)執(zhí)行N次即可。

3.編寫程序,在屏幕上顯示一段英文信息,如“HelloKitty!〞或者你喜歡的其他一段文字。

編程提醒:

1)要在屏幕上顯示信息,需先將要顯示內(nèi)容在數(shù)據(jù)段進(jìn)行定義,將要顯示的信息作為字符串放在單引號(hào)內(nèi),注意加上換行符0AH和回車符0DH,最終以地址符’$’終止。DATASEGMENTMESS

DB'HelloKitty!',0AH,0DH,'$'

2

DATAENDS

2)顯示信息用DOS功能調(diào)用的9號(hào)功能。先將要顯示信息的段地址送DS,偏移地址送DX。MOVAX,DATA;MOVDS,AX;MOVDX,OFFSETMESS;MOVAH,9INT21H

3)為避免運(yùn)行程序后死機(jī),在程序的最終加上返回DOS的語(yǔ)句:EXIT:

MOVINT

AX,4C00H21H

3

基礎(chǔ)試驗(yàn)二、分支程序設(shè)計(jì)

一、試驗(yàn)?zāi)康模喊盐辗种С绦虻幕驹O(shè)計(jì)方法。二、試驗(yàn)內(nèi)容:

1.統(tǒng)計(jì)學(xué)生成績(jī):設(shè)有10個(gè)學(xué)生成績(jī)分別是56、69、84、82、93、74、開始初始化計(jì)數(shù)單元80、99、100和63分,并保存在以GRADE為首址的單元中。試編制程序分別統(tǒng)計(jì)低于60分、60~69分、70~79分、80~89分、90~99分和100分的學(xué)生人數(shù),并存放到S5、S6、S7、S8、S9和S10單元中。

編程提醒:本程序算法簡(jiǎn)單,在成績(jī)分等部分采用分支結(jié)構(gòu),而統(tǒng)計(jì)所有學(xué)生成績(jī)則采用循環(huán)結(jié)構(gòu)。

程序框圖如右圖:

用DEBUG程序運(yùn)行經(jīng)匯編、連接的可執(zhí)行文件,觀測(cè)運(yùn)行結(jié)果。

2.試編寫一程序,根據(jù)用戶輸入的月份數(shù),在屏幕上顯示該月份的英文縮寫名,當(dāng)輸入的字符不在0~0CH之間,則退出程序,返回DOS。編程提醒:

初始化循環(huán)計(jì)數(shù)值初始化首地址取一個(gè)成績(jī)Y〈60?S5+1NY〈70?S6+1NY〈80?S7+1NY〈90?S8+1NN=100?S9+1YS10+1修改地址循環(huán)終止?NY終止4

1)在運(yùn)行程序時(shí),為便利用戶輸入月份數(shù),應(yīng)首先在屏幕上給出輸入月份的提醒信息。因此應(yīng)在代碼段的開始,首先進(jìn)行提醒信息顯示的編程。要在屏幕上顯示一段字符信息,用DOS功能調(diào)用的9號(hào)功能,入口參數(shù):AH=9,DS:DX=顯示信息存放的段地址:偏移地址。需要特別指出的是:在定義顯示信息時(shí),在信息的最終,一定要加上“0AH(換行),0DH(回車),‘$’〞。字符‘$’表示顯示信息終止。

2)用騰躍表法可使程序根據(jù)不同的條件轉(zhuǎn)移到多個(gè)程序分支中去。在這種方法里,對(duì)地址表的訪問是根據(jù)給定的條件直接算出相應(yīng)的表格地址而取得其內(nèi)容的。這一思路也可用在表格查找中。因此,可在數(shù)據(jù)段建立一個(gè)月份表:

MONTABDB‘JAN’DB‘FEB’DB‘MAR’

開始??

顯然,‘JAN’的地址為MONTAB+0,‘FEB’的地址為MONTAB+3,也就是提醒輸入月份說,根據(jù)用戶給定的月份數(shù)可算出與其相對(duì)應(yīng)的表格地址是:MONTAB+(月份接收鍵盤輸入的月份數(shù)數(shù)-1)*3。

3)等待接收一個(gè)從鍵盤輸入的字符,用DOS功能調(diào)用的1號(hào)功能,出口N是1-0CH?參數(shù)是:AL=輸入字符的ASCII碼。4)收到輸入字符的ASCII碼后,還

Y返回DOS需先將其轉(zhuǎn)變成數(shù)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論