(微机原理及应用)编程题试题集

重庆科技学院试卷库系统试卷库导出试卷

微机原理及应用-编程题(43题)

题序:0017 题型:06 难度:01 分值:10.0章号:03 节号:02 知识点:

。8086/8088指令系统 题干:

变量DATAX和DATAY定义如下: DATAX DW 0148H DW 2316H DATAY DW 0237H DW 4052H

试编写一个程序段,实现将DATAX和DATAY两个字数据相乘(用MUL)。 答案:

解: (1) MOV AX, DATAX MUL DATAY MOV DATAY,AX MOV DATAY+2,DX

题序:0018 题型:06 难度:02 分值:10.0章号:03 节号:02 知识点:

。8086/8088指令系统 题干:

变量DATAX和DATAY定义如下: DATAX DW 0148H DW 2316H DATAY DW 0237H DW 4052H

试编写一个程序段,实现将DATAX除以23(用DIV)。 答案:

解: (1) MOV AX, DATAX MOV BL, 23 DIV BL MOV BL,AH

1 / 19

MOV AH, 0

MOV DATAY, AX 。存放商 MOV AL,BL

MOV DATAY+2, DX 。存放余数

题序:0002 题型:06 难度:03 分值:10.0章号:03 节号:02 知识点:

。8086/8088指令系统 题干:

试编写一个程序段,实现将BX中的数除以10,结果仍放在BX中。 答案:

解: MOV CL,0AH MOV AX,BX DIV CL

MOV BX,AX

题序:0016 题型:06 难度:03 分值:10.0章号:03 节号:02 知识点:

。8086/8088指令系统 题干:

变量DATAX和DATAY定义如下: DATAX DW 0148H DW 2316H DATAY DW 0237H DW 4052H

试编写一个程序段,实现将DATAX和DATAY中的两个双字数据相加, 和存放在DATAY和 答案:

解: (1) MOV AX, DATAX ADD AX, DATAY MOV BX, DATAX+2 ADD BX, DATAY+2 MOV DATAY, AX MOV DATAY+2, BX

2 / 19

题序:0020 题型:06 难度:03 分值:10.0章号:03 节号:02 知识点:

。8086/8088指令系统 题干:

变量N1和N2均为2字节的非压缩BCD数码,请写出计算N1与N2之差的指令序列。 答案:

解: MOV AX, 0 MOV AL, N1+1 SUB AL, N2+1 AAS

MOV DL, AL MOV AL, N1 SBB AL, N2 AAS

MOV DH, AL

题序:0006 题型:06 难度:02 分值:10.0章号:04 节号:02 知识点:

。汇编语言及程序设计 题干:

编写程序实现对两个存储区中的字进行比较。如找到一对不同的字,则退出,此时 ,ZF为0,DI 指向此字;如两个存储区中所有的字都相同,则退出程序时,CX中值为0,ZF为1。 答案:

解: MATT: MOV SI, OFFSET SOURCE 。 源区首址 MOV DI, OFFSET TARGET 。 目的区首址 MOV CX, NUMBER

JCXZ EXIT 。 如CX为0,则结束 PUSH CX 。 保存有关寄存器 PUSH SI PUSH DI

CLD 。 清方向标志 REPE CMPSW

JZ MATCH 。 比较

PUSHF 。 ZF为1,则转移

SUB DI, 2 。 ZF为0,则DI指向次字 POPF

JMP EXIT 。 推出

3 / 19

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4