微机原理及应用编程题试题集.docx
- 文档编号:2979955
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:21
- 大小:24.69KB
微机原理及应用编程题试题集.docx
《微机原理及应用编程题试题集.docx》由会员分享,可在线阅读,更多相关《微机原理及应用编程题试题集.docx(21页珍藏版)》请在冰豆网上搜索。
微机原理及应用编程题试题集
重庆科技学院试题库系统试题库导出试题
微机原理及应用-编程题(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
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中。
答案:
解:
MOVCL,0AH
MOVAX,BX
DIV CL
MOVBX,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
题序:
0020题型:
06难度:
03分值:
10.0章号:
03节号:
02
知识点:
;8086/8088指令系统
题干:
变量N1和N2均为2字节的非压缩BCD数码,请写出计算N1与N2之差的指令序列。
答案:
解:
MOV AX,0
MOV AL,N1+1
SUBAL,N2+1
AAS
MOV DL,AL
MOV AL,N1
SBBAL,N2
AAS
MOV DH,AL
题序:
0006题型:
06难度:
02分值:
10.0章号:
04节号:
02
知识点:
;汇编语言及程序设计
题干:
编写程序实现对两个存储区中的字进行比较。
如找到一对不同的字,则退出,此时,ZF为0,DI指向此字;如两个存储区中所有的字都相同,则退出程序时,CX中值为0,ZF为1。
答案:
解:
MATT:
MOV SI,OFFSETSOURCE ;源区首址
MOV DI,OFFSETTARGET ;目的区首址
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 ;推出
MATCH:
POP DI ;恢复寄存器
POP SI
POP CX
EXIT:
RET
题序:
0015题型:
06难度:
02分值:
10.0章号:
04节号:
02
知识点:
;汇编语言及程序设计
题干:
根据下列要求编写一个汇编语言程序:
:
(1)代码段的段名为COD_SG
(2)数据段的段名为DAT_SG
(3)堆栈段的段名为STK_SG
(4)变量HIGH_DAT所包含的数据为95
(5)将变量HIGH_DAT装入寄存器AH,BH和DL
(6)程序运行的入口地址为START
答案:
解:
DAT_SG SEGEMNT
HIGH_DAT DB 95
DAT_SG ENDS
;
STK_SG SEGMENT
DW 64DUP(?
)
STK_SG ENDS
;
COD_SG SEGMENT
MAIN PROC FAR
ASSUMECS:
COD_SG,DS:
DAT_SG,SS:
STK_SG
START:
MOV AX,DAT-SG
MOV DS,AX
MOV AH,HIGH_DAT
MOV BH,AH
MOV DL,AH
MOV AH,4CH
INT 21H
MAIN ENDP
COD_SGENDS
END START
题序:
0026题型:
06难度:
02分值:
10.0章号:
04节号:
02
知识点:
;汇编语言及程序设计
题干:
已知整数变量A和B,试编写完成下述操作的程序:
(1)若两个数中有一个是奇数,则将该奇数存入A中,偶数存入B中;
(2)若两个数均为奇数,则两数分别加1,并存回原变量;
(3)若两个数均为偶数,则两变量不变。
答案:
解:
dsegsegment
a dw ?
b dw ?
dsegends
cseg segment
main proc far
assume cs:
cseg,ds:
dseg
start:
push ds
sub ax,ax
push ax
mov ax,dseg
mov ds,ax
begin:
mov ax,a
mov bx,b
xor ax,bx
test ax,0001
jz class
test bx,0001
jz exit
xchg bx,a
mov b,bx
jmp exit
class:
test bx,0001
jz exit
inc b
inc a
exit:
ret
main endp
cseg ends
end start
题序:
0001题型:
06难度:
03分值:
10.0章号:
04节号:
02
知识点:
;汇编语言及程序设计
题干:
在DS段中有一个从TABLE开始的由160个字符组成的链表,设计一个程序,实现对此表进行搜索,找到第一个非0元素后,将此单元和下一单元清0。
答案:
解:
MOV CX,SEGTABLE
MOV DS,CX ;将段地址送DS
MOV SI,OFFSETTABLE;表偏移量送SI
MOV CX,160 ;字节数
XOR AL,AL
NEXT:
CMP AL,[SI]
JNE EXIT1
INC SI
LOOP NEXT
EXIT1:
MOV [SI],AL
INC SI
MOV [SI],AL
题序:
0004题型:
06难度:
03分值:
10.0章号:
04节号:
02
知识点:
;汇编语言及程序设计
题干:
用循环控制指令设计程序段,从60H个元素中寻找一个最大值,结果放在AL中。
答案:
解:
MOV SI,OFFSETDATA1;将数据起始地址送SI
MOV CX,5FH ;有60H-1次循环
MOV AL,[SI] ;将第一个元素放AL中
COMPARE:
INC SI
CMP AL,[SI]
JL XCHMAX
JMP NEXT
XCHMAX:
MOV AL,[SI]
NEXT:
LOOPCOMPARE
题序:
0007
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 应用 编程 试题