1、38 设DX=78C5H,CL=5,CF=1,确定下列各条指令执行后,DX和CF中的值。(1) SHR DX,1 ;DX=3C62H CF=1(2) SAR DX,CL ;DX=03C6H CF=0(3) SHL DX,CL ;DX=18A0H CF=1(4) ROR DX,CL ;DX=2BC6H CF=0(5) RCL DX,CL ;DX=18B7H CF=1 (6) RCR DH,1 ;DX=BCC5H CF=0;39 设AX=0A69H,VALUE字变量中存放的内容为1927H,写出下列各条指令执行后寄存器和CF、ZF、OF、SF、PF的值。 AX CF ZF OF SF PF(1)X
2、OR AX,VALUE ; 134EH 0 0 0 0 1(2)AND AX,VALUE ; 0821H 0 0 0 0 1(3)SUB AX,VALUE ; F142H 1 0 0 1 1(4)CMP AX,VALUE ; 0A69H 1 0 0 1 1(5)NOT AX ; F596H X X X X X (6)TEST AX,VALUE ; 0A69H 0 0 0 0 1310 设AX和BX中是符号数,CX和DX是无符号数,请分别为下列各项确定CMP和条件转移指令。(1) CX值超过DX转移。(2) AX未超过BX转移。(3) DX为0转移。(4) CX值等于小于DX转移。(1) CMP
3、 CX,DXJA NEXT(2) CMP AX,BX JLE NEXT(3) CMP DX,0 JZ NEXT(4) CMP CX,DX JBE NEXT311 阅11 阅读分析下列指令序列:ADD AX,BXJNO L1JNC L2SUB AX,BXJNC L3JNO L4JMP L5若AX和BX的初值分别为以下5种情况,则执行该指令序列后,程序将分别转向何处(L1L5中的一个)。(1) AX=13C6H, BX=80DCH(2) AX=0B568H,BX=54B7H (3) AX=42C8H, BX=608DH(4) AX=0D023H,BX=9FD0H(5) AX=9FD0H, BX=0
4、D023H(1) 转L1(2) 转L1(3) 转L2(4) 转L5(5) 转L5 第四章 汇编语言程序设计习题45 画出下列语句中的数据在存储器中的存储情况。VARB DB 34,34H,GOOD,2 DUP(1,2 DUP(0)VARW DW 5678H,CDVARC EQU 1222H34HGOD178H56HCVARB VARW46 按下列要求,写出各数据定义语句。(1) DB1为10H个重复的字节数据序列:1,2,5个3,4。(2) DB2为字符串STUDENTS(3) DB3为十六进制数序列:12H,ABCDH(4) 用等值语句给符号COUNT赋以DB1数据区所占字节数,该语句写在最
5、后。 DB1 DB 16 DUP(1,2,5 DUP(3,4) DB2 DB STUDENTS DB3 DW 12H,0ABCDH COUNT EQU DB2DB1 410 若自STRING单元开始存放有一个字符串(以字符$结束);(1) 编程统计该字符串长度(不包含 $ 字符,并假设长度为两字节)。(2) 把字符串长度放在STRING 单元,把整个字符串往下移两个单元。 程序段为:(1) MOV SI,OFFSET STRING XOR BX,BXCONT:MOV AL,SI CMP AL,$ JZ NEXT INC BX INC SI JMP CONTNEXT: MOV AH,4CH IN
6、T 21H(2) STRING DB . $ COUNT EQU $-STRING : MOV SI,OFFSET STRING MOV CX,COUNT ADD SI,CX CONT: DEC SI MOV AL,SI MOV SI+2,AL LOOP CONT MOV STRING,CX MOV AH,4CH411 将字符串STRING中的& 字符用空格代替,字符串STRING“The data is FEB&03”。 程序为:DATA SEGMENTSTRING DB The data is FEB&03COUNT EQU $-STRINGDATA ENDSCODE SEGMENT AS
7、SUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX MOV SI,OFFSET STRING MOV CX,COUNT MOV AL,$ CMP AL,SI JNZ NEXT MOV BYTE PTRSI, INC SI LOOP CONT MOV AH,4CH INT 21HCODE ENDS END START416 键盘输入十个学生的成绩,试编制一个程序统计6969分,7079分,8089分,9099分及100分的人数,分别存放到S6,S7,S8,S9及S10单元中。 程序为: DATA SEGMENT BUF DB 10 DUP(?) S6
8、 DB ? S7 DB ? S8 DB ? S9 DB ? S10 DB ? DATA ENDS CODE SEGMENT ASSUME CS: START: MOV DS,AX MOV SI,OFFSET S6 XOR AL,AL MOV CX,0504H CONT: MOV SI,AL INC SI LOOP CONT MOV CX,10 MOV SI,OFFSET BUF CONT1: MOV AH,1 INT 21H SHL AL,CL MOV BL,AL MOV AH,1 SUB AL,30H OR AL,BL MOV SI,AL CMP AL,70H JAE NEXT1 INC B
9、YTE PTR S6 NEXT1: CMP AL,80H JAE NEXT2 INC BYTE PTR S7 NEXT2: CMP AL,90H JAE NEXT3 INC BYTE PTR S8 NEXT3: CMP AL,99H JA NEXT4 INC BYTE PTR S9 JMP NEXT5 NEXT4; INC BYTE PTR S10 NEXT5: INC SI LOOP CONT1 MOV AH,4CH CODE ENDS END START第7章 基本输入/输出接口习题74 现有一输入设备,其数据端口地址为FFE0H,状态端口地址为FFE2H,当其D0为1时表明输入数据准备好
10、。试采用查询方式,编程实现从该设备读取100个字节数据并保存到2000H:2000H开始的内存中。 程序段为:MOV AX,2000HMOV DS,AXMOV SI,2000HMOV CX,100 MOV DX,0FFE2H CONT1: IN AL,DX TEST AL,01 JZ CONT1 MOV DX,0FFE0H IN AL,DX INC SI MOV AH,4CH INT 21H 75 硬件如图75所示,试编程实现:S0控制8个发光二极管1亮7暗,S1控制8个 8个发光二极管7亮1暗,S2控制某一亮点(或暗点)以一定时间间隔循环向左移动,S3控制某一亮点(或暗点)以一定时间间隔循环
11、向右移动,两个或两个以上开关闭合,则结束程序。(省略伪指令) BUF1 DB 01H BUF2 DB 80H MOV DX,200HAGAIN: XOR BL,BL MOV CX,8 ROR AL,1 JNC NEXT INC BL CMP BL,2 JAE EXITCMP AL,0FEH JZ 1L7A CMP AL,0FD JZ 1A7L CMP AL,0FBH JZ ZSHL CMP AL,0F7H JZ YSHR1L7A: MOV AL,80H OUT DX,AL JMP AGAIN7A7L:MOV AL,7FZSHL:MOV AL,BUF1 ROL AL,1 MOV BUF1,AL
12、CALL D500MSYSHR:MOV AL,BUF2 ROR AL,1EXIT:MOV AH,4CH第8章 中断习题 82 已知中断向量表表中地址0020H 0023H的单元中依次是40H,00H,00H,01H,并知INT 08H指令本身所在的地址为9000H:00A0H。若SP=0100H,SS=0300H,标志寄存器内容为0240H,试指出在执行INT 08H指令,刚进入它的中断服务程序时,SP,SS,IP,CS和堆栈顶上三个字的内容(用图表示)。 执行后 SS=0300H SP=00FAH CS=0100H IP=0040H ,堆栈顶上三个字的内容如下所示:栈区A2H00H90H40
13、H02HXX 00FAH 00FCH 执行后:0300H:00FEH 初始: 0300H:01000H 83 某一用户中断源的中断类型号为40H,其中断服务程序名为INTR40,请用两种不同的方法设置它的中断向量。 方法一: MOV AX,0 MOV DS,AX MOV AX,OFFSET INTR40 MOV 00C0H,AX MOV AX,SEG INTR40 MOV 00C2H,AX方法二: MOV ES,AX MOV DI,40H*4 CLD MOV AX,OFFSET INTR40 STOSW MOV AX,SEG INTR40 85 某一8086CPU系统中,采用一片8259A进行
14、中断管理。设8259A工作在全嵌套方式,发送EIO命令结束中断,边沿触发方式,IR0对应的中断向量号为90H,8259A在系统中的端口地址为FFDCH(A0=0)和FFDDH(A0=1),试编写8259A的初始化程序段。 初试化程序段为: MOV DX,0FFDCHMOV AL,13H OUT DX,AL INC DXMOV AL,90HOUT DX,ALMOV AL,01第9章 可编程接口芯片及应用习题 91 试按如下要求分别编写初始化程序,已知计数器0 2和控制字寄存器的端口地址依次为204H 207H。(1)使计数器1工作在方式0,仅用8位二进制计数,计数初值为128。 (2)使计数器0
15、工作在方式1,按BCD码计数,计数值为3000。(3)使计数器2工作在方式2,按二进制计数,计数值为02F0H。 初始化程序为: MOV DX,207H MOV AL,50H OUT DX,AL MOV DX,205H MOV AL,80H MOV AL,23H MOV DX,204HMOV AL,30H MOV AL,0B4H MOV DX,206H MOV AL,0F0H MOV AL,02 OUT DX,AL 92 硬件如题92图,利用PC内部8253定时器0,并用中断方式实现每隔1s使发光二极管亮暗交替显示。(PC内部8253输入时钟频率为11932MHz,8253定时器0端口地址为4
16、0H,控制寄存器端口地址为43H。Y0为350H)。定时器计数值=11932MHz5=32864=83D5H 软件计数值:50 程序为:(硬件图见教材P345题92图) MOV AL,34H OUT 43H,AL MOV AL,0D5H OUT 40H,AL MOV AL,83H MOV BL,50 T0中断服务程序为: DEC BL JNZ EXIT1 MOV AL,BUF NOT AL MOV BUF,AL MOV DX,350H EXIT1:MOV AL,20H OUT 20H,AL;(设8259A的端口地址为20H,21H) IRET93 硬件如题 93图,8253采用方式0,BCD码
17、计数方式,初始值为1000,每按一次按钮S,计数器值减1。试编程实现显示8253当前计数值,直至计数值为0。8253端口地址范围为80H 83H。(略。在何处显示-屏幕/LED/液晶?94 图94为一简化的键盘/数码管显示接口电路,假设端口线a h及1、2脚送“1”电平,可使显示点亮并能实现扫描,试问U1、U2及数码显示器的选用。(1)U1为 (同相驱动器 / 反相驱动器)。(2)U2为 (同相驱动器 / 反相驱动器)。(3)数码显示器为 (共阴 / 共阳)数码管。(4)若A键闭合,则端口线3,4的电平为 。 图94见教材P346(1) 选用同相驱动器(2) 选用反相驱动器 (3) 选用共阴数
18、码管(4) 若A键闭合,则端口线3,4的电平为0,195 硬件如题 95图,试编程实现循环检测S0、S1,当S0按下,数码管显示0,当S1按下,数码管显示1,S0、S1同时按下,则结束程序。8255的端口地址范围为80H83H。 MOV AL,82H OUT 83H,AL IN AL,81H TEST AL,03 JZ EXIT TEST AL,01 JZ NEXT MOV AL,3FH OUT 80H,AL JMP AGAIN NEXT: TEST AL,02 JZ NEXT1 MOV AL,06NEXT1:MOV AL,00 OUT 80H,AL MOV AH,4CH第10章 串行通信习题
19、106 设异步传输时,每个字符对应一个起始位,7个信息位,1个奇偶校验位和一个停止位,如果波特率为9600,每秒能传输的最大字符数为多少个? 字符数=9600位 / 秒10位 / 字符=960(字符 / 秒)1013 要求8251A工作于异步方式,波特率系数为16,字符长度为7位,奇校验,2个停止位。工作状态要求:复位出错标志,使请求发送信号RTS有效,使数据终端准备好信号DTR有效,发送允许TxEN有效,接受允许RxE有效。设8251A的两个端口地址分别为0C0H和0C2H,试完成初始化编程。初始化程序为: MOV AL,11011010B (DAH) OUT 0C2H,AL MOV AL,
20、00110111B (37H)第11章 模数、数模转换习题 113 某8086系统中,A/D转换器ADC0809只使用一个模拟量输入通道,试设计其接口电路,并编写子程序。子程序的功能是启动A/D转换,并以查询方式读入一个采样数据放在寄存器DL中。 设所设计的A/D转换器接口电路如下: 采样程序为: CYSUBR PROC OUT 50H,AL NOP WAIT1: IN AL,51H TEST AL,01 JZ WAIT1 IN AL,50H MOV DL,AL RET CYSUBR ENDP 114 某8086系统中,由ADC0809构成A / D转换器,通过8255与CPU接口,如题114图所示。试编写程序,以查询的方式巡回采样8个模拟量输入通道,每个通道16次。采样数据存放在内存中。 题114图 程序段为: MOV AL,10000001B(81H) MOV DX,0FFDBHLOP0: MOV DI,OFFSET BUF MOV BL,0LOP1: MOV CX,16 MOV AL,BL MOV DX,0FFD8 MOV DX,0FFCAH MOV AL,0C0H NOPLPO2: TEST AL,01 JZ LOP2 DEC DX IN AL,DX MOV DI ,AL INC DI INC BL CMP BL,8
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1