华电微机原理与技术汇编语言题目及答案

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

微机原理与接口技术汇编题目

2、将数据段DATA1中的10个字数据(16位数)传送到数据段DATA2中。提示:

0000H)

1、指定数据的起始地址:(如果不指定起始地址,则起始地址为

DATA SEGMENT

ORG 2000H

DB 1,,2,3,4,5,6,7, 8,9,10 ; DB 定义字节数据

ORG 3000H

DB 10 DUP(O);预留10个单元存放结果,初值预定义为0

DATA ENDS

2、定义字数据命令为:DW

DATA1 SEGMENT

DW 1, ,2, 3, 4, 5, 6, 7, 8, 9, 10 ; DW 定义字数据DATA1 ENDS

一个字为两个字节,在存中低位在前,高位在后。

1已知0~15的平方值表,查表求X (X是0到15间任一数)的平方值,送到Y单元,用两种方法。

2、已知0~255的平方值表,查表求X的平方值,送到Y单元。

提示:

0到15的平方表,每个平方值为一个字节;

0到255的平方表,每个平方值为2个字节;调试程序,平方表中的数据定义几个就行,目的是程序正确即可。

一个字为两个字节,在存中低位在前,高位在后。

1 计算多字节数据1122334455667788H 与99AABBCCDDEEFF00H 的和。

2、计算8字节的BCD 码十进制数1122334455667788H 与9988776655443322H 的和

3、计算10个字数据的和(数据自己定义)。

提示;

1、多字节数据在存中存放,低位在前,高位在后

DAT1 DB 88H,77H,66H,55H,44H,33H,22H,11H

DAT2 DB 00H,0FFH,0EEH,0DDH,0CCH,0BBH,0AAH,99H

二进制加法指令:ADD

BCD十进制加法:ADD

DAA;十进制调整指令,仅对AL作为加法的累加和寄存器进行调整

(4 )计算表达式的值

1计算表达式Z ((X Y)*7)/(Y 2)的值,已知X=10, Y=5。

提示:

X DB 10

Y DB 5

Z DB ?

AL=X-Y

BL=7

AX=AL*BL

BH=Y+2

AL=AX/BH 的商

AH=AX/BH 的余数

兔乘法

八' -Am.无符号数乘法-i\n L有符号数乘法・例

AfUL DL 土AX ^AL*DL

rxruL BX: DX AX「AXTX

MUL BYTEPTR[SI|;AX ^-AL*(I>S*16+SI)

(5)找最大、最小数

1、找出2040H单元和2041H单元的大数,并送2042H单元(数据自己定义)

2、找出10个数(8位数)里的最大数(数据自己定义)

1、找出10个数(8位数)里的正数个数(数据自己定义)

2、找出10个数(16位数)里的负数个数(数据自己定义)

(7)数据块比较

1、分别在FARD1和FARD2单元开始存放了10个字节数据,编程比较是否一致(数据自己定义)。

2、分别在FARD1和FARD2单元开始存放了10个字数据,编程比较是否一致(数据自己定义)。

1、在数据段3000H单元开始存放了数字0~9的ASCII码,求对应的十进制数字并存放到3500H开

始的单元;再将3500H开始的十进制数字转换为对应的ASCII码,存放到3800H

开始单元。

提示:

数字转换方法:

例如:数字’5 '的ASCII为35H(0011 0105B),想办法变为05H(00000105B),存入对应的单元,然后再将05H(00000105B),变为35H(0011 0105B)存入对应的单元。

DATA SEGMENT

ORG3000H

DB'0123456789 'DB定义字节数据

ORG3500H

DB10 DUP(?);预留10个单兀存放结果

ORG3800H

DB10 DUP(?);预留10个单兀存放结果

DATA ENDS

1、在显示器上输出字符串’HELLO !'

2、从键盘输入一组字符串,存入到BUFFER数据区(自己定义)中。

3、将十进制数25从显示器上输出。

4、将数据段中的10个个位数数据从显示器上输出。以上各题做为练习使用!提示:

1、显示字符串

2、键盘输入一组字符串

方法1用10号调用,

方法2用1号调用,设置循环次数

3、将十进制数25从显示器上输出。

想办法把25的十位和个位拆开,再分别变为ASCII,先显示2 ,后显示5

3、将数据段中的10个个位数数据从显示器上输出。

从数据段中直接定义10个个位数据,取出数据后,变为变为ASCII,显示

二实验过程参考步骤

题目

1、将数据段中2000H单元开始存放的10个数(8位数)传送到3000H开始的10个字节中。

源程序:数据定义

DATAS SEGMENT

ORG 2000H

DATA1 DB 1,2,3,4,5,6,7,8,9,10

ORG 3000H

DATA2 DB 10 DUP (0)

DATAS ENDS

CODES SEGMENT

START: MOV AX,DA TAS

MOV DS, AX

MOV SI, 2000H

相关文档
最新文档