西电微机原理实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微机系统实验报告

班级:031214

学号:********

*名:***

地点:E-II-312

时间:第二批

实验一汇编语言编程实验

一、实验目的

(1)掌握汇编语言的编程方法

(2)掌握DOS功能调用的使用方法

(3)掌握汇编语言程序的调试运行过程

二、实验设备

PC机一台。

三、实验内容

(1)将指定数据区的字符串数据以ASCII码形式显示在屏幕上,并通过DOS功能调用完成必要提示信息的显示。

(2) 在屏幕上显示自己的学号姓名信息。

(3)循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到输入“Q”或“q”时结束。

(4)自主设计输入显示信息,完成编程与调试,演示实验结果。

考核方式:完成实验内容(1)(2)(3)通过,

完成实验内容(4)优秀。

实验中使用的DOS功能调用:INT 21H

表3-1-1 显示实验中可使用DOS功能调用

四、实验步骤

(1)运行QTHPCI软件,根据实验内容编写程序,参考程序流程如图3-1-1所示。

(2)使用“项目”菜单中的“编译”或“编译连接”命令对实验程序进行编译、连接。

(3)“调试”菜单中的“进行调试”命令进入Debug调试,观察调试过程中数据传输指令执行后各寄存器及数据区的内容。按F9连续运行。

(4)更改数据区的数据,考察程序的正确性。

五、实验程序

DATA SEGMENT

BUFFER DB '03121370konglingling:',0AH,0DH,'$'

BUFFER2 DB 'aAbBcC','$'

BUFFER3 DB 0AH,0DH,'$'

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA

START:

MOV AX,DA TA

MOV DS,AX

mov ah,09h

mov DX,OFFSET BUFFER

int 21h

MOV SI,OFFSET BUFFER2

lab1:

cmp BYTE PTR [SI],'$'

je lab2

MOV AL,DS:[SI]

AND AL,0F0H ;取高4位

MOV CL,4

SHR AL,CL

CMP AL,0AH ;是否是A以上的数

JB C2

ADD AL,07H

C2: ADD AL,30H

MOV DL,AL ;show character

MOV AH,02H

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 ;show character

MOV AH,02H

INT 21H

add SI,1

jmp lab1

lab2:

mov ah,09h

mov DX,OFFSET BUFFER3

int 21h

mov ah,01h

int 21h

cmp al,'q'

je lab3

mov B L,AL

AND AL,0F0H ;取高4位

MOV CL,4

SHR AL,CL

CMP AL,0AH ;是否是A以上的数

JB C4

ADD AL,07H

C4: ADD AL,30H

MOV DL,AL ;show character

MOV AH,02H

INT 21H

MOV AL,BL

AND AL,0FH ;取低4位

CMP AL,0AH

JB C5

ADD AL,07H

C5: ADD AL,30H

MOV DL,AL ;show character

MOV AH,02H

INT 21H

jmp lab2

lab3:

mov ah,4ch

int 21h

CODE ENDS

end START

六、实验结果

实验二数码转换实验

一、实验目的

(1)掌握不同进制数及编码相互转换的程序设计方法。

(2)掌握运算类指令编程及调试方法。

(3)掌握循环程序的设计方法。

二、实验设备

PC机一台。

三、实验内容及说明

(1)重复从键盘输入不超过5位的十进制数,按回车键结束输入;

(2)将该十进制数转换成二进制数;结果以2进制数的形式显示在屏幕上;

(3)如果输入非数字字符,则报告出错信息,重新输入;

(4)直到输入“Q”或‘q’时程序运行结束。

(5)键盘输入一字符串,以空格结束,统计其中数字字符的个数,并在屏幕显示。

考核方式:完成实验内容(1)(2)(3)(4)通过,

完成实验内容(5)优秀。

转换过程参考流程如图3-2-2所示。

十进制数可以表示为:D n*10n+D n-1*10n-1+…+D0*100=∑ D i*10i

其中D i代表十进制数1、2、3、…、9、0。

上式可以转换为:∑ D i*10i=(((D n*10+D n-1)*10+ D n-2)*10+…+ D1)*10+ D0

由上式可归纳出十进制数转换为二进制数的方法:从二进制数的最高位D n开始做乘10

相关文档
最新文档