您好,欢迎来到筏尚旅游网。
搜索
您的当前位置:首页微机原理实验

微机原理实验

来源:筏尚旅游网
实验一

两个多位

十进制数相加的实验

一、 实验目的

1、 熟悉DOS系统命令;学习数据传送和算术运算指令

的用法。

2、 熟悉在PC机上建立、汇编、连接、调试、和执行汇

编语言程序的过程。

3、 初步练习用DEBUG调试程序运行8086汇编语言的

过程。

二、 实验内容

将两个多为十进制数相加,要求加数河被加数均以BCD码形式各自顺序存放在DATA1和DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。 三、 对照程序框图完成下列程序

开始

调整偏移量 计数值5——CX 清楚最低位进位 执行ADC带进位相加 AAA调整 结果送被加数区 N

四、代码段如下: data segment

Y 结 束 CX-1=0 data1 db 03h,09h,01h,07h,04h data2 db 06h,05h,00h,08h,02h

data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov si,offset data1 mov di,offset data2 mov cx,5 clc ad: mov al,[si] mov bl,[di] adc al,bl aaa mov [si],al inc si inc di loop ad hlt code ends end start 运行结果为:

09 04 02 06 07

经分析,显示的结果正确。截屏的程序与结果如下:

实验四 统计学生成绩实验

一、实验目的

通过对学生成绩统计程序的编写,掌握多重分支程序的基本设计方法。 二、实验内容

将十个学生的成绩按不同分数档进行统计,并将结果存入相应单元中。

四、 参考程序框图完成下列程序。 成绩表首地址——SI 开始 循环计数值——CX 取一个成绩 <60 S5+1 <70 S6+5 <80 S7+1 <90 S8+1 S10+1 =100 S9+1 SI+1 CX-1= 结 束 五、 实验代码及运行结果截图如下:(截图说明:由于屏幕

的,后面还有几句代码没有截到: hlt

code ends

end start

从上面可以看出,实验结果为: 01 02 02 03 01 01

实验六 将ASCII码 转换为二进制数

一、 实验目的

掌握码制转换的基本原理及相应的转换程序的编写方法。 二、 实验内容

将ASCII数据转换为二进制数据;要求将内存中以ASCII码表示的十进制整数(范围0——32767),转换成二进制格式存储。 三、 参考框图完成下列程序。

开始 ASCII字符串偏移——SI;字符个数——BL AX 清 0 乘数10——DX

AX乘DX——AX

四、实验运行结果分析及截图如下:

结 束 AX——DATA1 BL=0? SI+1;BL-1 AX+DX DL AND 0FH 取一个ASCII——DL DH清 0

结果正确:

输入数据为:‘39’ 输出结果为:0F7C

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- efsc.cn 版权所有 赣ICP备2024042792号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务