微机原理作业

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

微机原理作

第一章

1.135.625

3.376.125

1.1A 把下列十进制数转换为二进制,十六进制和BCD 数;

1.1B 要求同上,要转换的十进制数如下;

1.67.375

2.936.5

1.2A

268.875 4.218.0625

写下列十进制数的原码,反码和补码表示(用8 位二进制);

1.+65

2.-115

1.2B

3.-65

要求同题 1.2A 数据如下;

4.-115 1.+33 2.+127

1.3A

3.-33

4.-127

用16 位二进制,写出下列十进制数的原码,反码,和补码表示;

1.+62

2.-62

3.+253

4.-253

1.4A 5.+615 6.-615

写出下列用补码表示的二进制数的真直;

1.01101110

2.01011001

1.4B 3.10001101

要求同题 1.4A 数据如下;

4.11111001

1.01110001

3.10000101

2.00011011

4.11111110

2.548.75

4.254.25

汇编语言程序设计

题 3.1A

在下列程序运行后,给相应的寄存器及存储单元填入运行的结果:

题3.2,如在自1000H 单元开始有一个 100个数的数据块。要把它传送到自 储区中去,用以下三种方法,分别编制程序;

1 ;不用数据块转送指令; 2;用单个转送的数据块转送指令; 3;用数据块成组转送指令;

题3.3A 利用变址寄存器遍一个程序,把自 1000H 单元内开始的100个数转送到自1070H 开

始的存储区中去,

题3.3B 要求用3.3A ,源地址为2050H ,目的地址为2000H ,数据块长度为50, 题3.4

编一个程序,把自 1000H 单元开始的100个数转送至1050H 开始的存储区中(注意

数据区有重叠)。

题3.5A 在自0500H 单元开始,存有100个数。要求把它传送到 1000H 开始的存储区中,但

在传送过程中要检查数的值,遇到第一个零就停止传送。 题3.5B

条件同题3.5A ,但在传送过程中检查数的值,零不传送,不是零则传送至目的区。

第三章 MOV AL ,10H MOV byte PTR [1000],0FFH

MOV CX ,1000H

MOV BX ,2000H MOV [BX],AL XCHG CX ,BX MOV DH ,[BX] MOV DL ,01H XCHG CX ,BX MOV [BX],DL

HLT

题 3.1B

要求同题3.1A 程序如下;

MOV AL , 50H MOV BP , 1000H

MOV BX ,2000H MOV [BP],AL MOV DH ,20H MOV [BX],DH MOV DL ,01H MOV DL ,[BX] MOV CX ,3000H

2000H 开始的存 HLT

1000H

2000H

题3.6 把在题3.5A中指定的数据块中的正数,传送到自1000H开始的存储区。题3.7 把在题3.5A 中指定的数据块中的正数,传送到自1000H开始的存储区;而把其中的负数,传送到自1100H开始的存储区。且分别统计正数和负数的个数,分别存入1200H和1201H 单元中。

题3.8A 自0500H单元开始,有10个无符号数,编一个程序求10个数的和(用8个位数运算指令),把和放

到050A及050B单元中(和用两个字节表示),且高位在050B单元。

题3.8B自0200H单元开始,有100个无符号数,编一个程序求这100个数的和(用8位数运算指令),把和

放在0264H和0265H单元(和用两字节表示),且高位在0265H单元。

题3.9 题同3.8,只是在累加时用16位运算指令编程序。

题3.10A 若在0500H单元中有一个数x:

1•利用加法指令把它乘2,且送回原存储单元(假定x*2后仍为一个字节);

2.x*4;

3.x*10 (假定x*10 W 255)。

题 3.10B

题意与要求同题 3.10A,只是x*2后可能为两个字节。

题 3.11

若在存储器中有两个数a和b (它们所在地址用符号表示,下同),编一个程序实现a*10+b (a*10以及“和”用两字节表示)。

题 3.12

若在存储中有数a, b, c, d (它们连续存放),编一个程序实现

((a*10+b )*10+c)*10+d (和W 65535)

题 3.13A

在0100H单元和010AH单元开始,存放两个各为10个字节的BCD数(地址最低处放的是最低字节),求它

们的和,且把和放在0114H开始的存储单元中。

题 3.13B

在0200H单元和020AH单元开始,存放两个各为10个字节的二进制数(地址最低处放的是最低字节),

求它们的和,且把和放在0214H开始的存储单元中。

题 3.14

在0200H单元开始放有效 A (低位在前)

NA=95 43 78 62 31 04 56 28 91 01

在020单元开始放有数B

NB=78 96 42 38 15 40 78 21 84 50

求两数之差,且把差值送入自0200H开始的存储区。

题 3.15A

在0500H单元有一个数x,,把此数的前四位变0,后四位维持不变,送回同一单元。

题 3.15B

条件同题3.15A,要求最高位不变,后7位都为0。

题 3.16A

若在0500H单元有一个x,把此数的前四位变“ 1”,后四位维持不变,送回同一单元。

题 3.16B

把x的最低位变“ 1 ”,高7位不变,送至0600H单元。

题 3.17A

若在0500H有一个数X,把此数的前四位变反,后四位维持不变,送回同一个单元

题 3.17B

把X最高位去反,后7位不变,送至0600H单元。

相关文档
最新文档