微机实验实验报告

  • 格式:doc
  • 大小:709.00 KB
  • 文档页数:16

微机实验实验报告
姓名易丰
学号201239284074
专业班级12电科
提交日期2014年6月19日
实验二数码转码编程及程序调试
一、实验目的
1.掌握不同进程数及编码相互转换的程序设计方法,加深对数码转换的理解;
2.进一步熟悉键盘使用方法;
3.进一步熟悉调试程序的方法。

二、实验设备
装有汇编软件的IBMPC 机一台
三、实验内容及步骤
1.将ASCII 码表示的十进制数转换为二进制数
实验步骤
(1)输入程序并检查无误。

(2)在3500~3504h 单元存入十进制12 的ASCII 码,即e3500,并输入3030303132。

(3)g=2000,运行程序,并用CTR+C 来中断程序返回监控态。

(4)用d3510 查看结果,应为3510 0C 00
(5)反复试几组数,考查程序的正确性。

(6)参考流程图如下图
流程图
汇编程序代码如下所示:
将 ASCII 码表示的十进制数转换为二进制数
DATA SEGMENT ;定义源数据段
ORG 3500H
MSR DB 5 DUP(?)
LEN EQU $-MSR
DATA ENDS
CODE SEGMENT ;定义代码段
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS,AX
MOV SI, OFFSET MSR
MOV CX,LEN-1
MOV AL, DS:[SI] ;开始传输数据
MOV AH,0
SUB AX,30H
NEXT1: MOV BX, 0AH ;因为MUL后面不能直接接立即数,所以应该将要乘的数值存储到寄存器中
MUL BX ; 将AX中的数乘以10,所得的结果高位保存到DX中,低位保存到AX中
INC SI ;自加指令
MOV DL,DS:[SI] ;传输数据到DL
MOV DH,0
SUB DX,30H ;将数字对应的ASCII码转换成响应的二进制数
ADD AX,DX
DEC CX
JNZ NEXT1
MOV CL,16 ; CL用作循环NEXT2的计数器,因为5位十进制数转化成二进制只有十六位,所以循环次数为16次
MOV BX,AX
NEXT2: ROL BX,1
MOV DL,BL
AND DL,01H
ADD DL,30H ;把BX中的数以二进制形式输出
MOV AH,2H ;在屏幕上显示出寄存器中的数据
INT 21H
DEC CL
JNZ NEXT2
MOV SI,3510H
MOV [SI],BX ;将结果输出到指定的内存里面!
MOV AX,4C00H ;DOS功能调用的方法(AH = 功能号),此处对应程序终止的功能号
INT 21H ;执行程序终止的中断调用指令
CODE ENDS
END START
实验结果(截图):
当往3500H开始输入3030303132后,结果如下
当往3500H开始输入3530343132后,结果如下
结果说明:
由实验结果知,该程序有效地实现了题目所要求的功能,所以实验结果正确。

2.将从键盘输入的五位十进制数的ASCII 码已存在3500 起始的内存单元中。

把它转换
成BCD 码后,再按位分别存入350A 起始的内存单元内。

若输入的不是十进制的ASCII 码,则显示FF
实验步骤
(1)输入程序并检查无误。

(2)在3500~3504H 单元存入五位十进制数的ASCII 码,即e3500并输入31,32,33,34,35。

(3)G=2000,运行以上程序。

(4)D350A,显示结果为:0000:350A 01 02 03 04 CC…
(5)反复试几组数,考查程序的正确性。

(6)参考流程图如下
流程图:
汇编程序代码如下所示
实验结果(截图):
当往3500H开始输入4032213530后,在350AH处结果如下
结果分析:
由实验结果可知,结果与预期相符,所以实验结果正确。

3.将十六位二进制数转换为ASCII 码表示的十进制数。

实验步骤
(1)输入程序并检查无误。

(2)在3500~3501H 单元中存放0C00,运行程序并检查结果,应看到3510~3514H 单元中的数依次为3030303132。

(3)参考流程图如下图所示
流程图:
汇编程序代码如下所示:
实验结果(截图):
当往3500H开始输入000CH后,在3510H处结果如下
当往3500H开始输入1210H后,在3510H处结果如下
结果分析:
由实验结果可知,实验结果与与其相符,所以实验结果是正确的。

4.十六进制数转换为ASCII 码
实验步骤
(1)输入程序并检查无误
(2)在3500~3501H 单元中存入四个十进制数(12,34,56,78)的BCD码,即e3500,输入01.02.03.04.05.06.07.08。

(3)G=2000,运行程序
(4)D3510,显示结果为3510 0C 00 22 00 38 00 4E 00
(5)参考流程图如下图所示
流程图
汇编程序代码如下所示:
实验结果(截图)
当往3500H开始输入203BH后,在3510H处结果如下
当往3500H开始输入345FH后,在3510H处结果如下
结果分析
由实验结果可知,实验结果与与其相符,所以实验结果是正确的。

5.BCD 码转换为二进制码
实验步骤
流程图
汇编程序代码如下所示:
实验结果(截图)
当往3500H开始输入0102030405060708H后,在3510H处结果如下
由实验结果可知,实验结果与与其相符,所以实验结果是正确的。