2022年微机原理答案-南京理工大学.docx
精选学习资料 - - - - - - - - - 目录CH01 微型电脑概述 . 1 CH02 8086 8088 指令系统 . 6 CH03 汇编语言程序设计 . 12 CH04 储备系统 . 27 CH05 定时与计数 . 31 CH06 输入输出掌握 . 35 CH01 微型电脑概述1 微型电脑由哪些部件组成?各部件的主要功能是什么?解答:微机系统 微型电脑 系统软件 外围设备:打印机、键盘、CRT、磁盘掌握器等 微处理器CPU 系统总线: AB 、CB、DB 功能:为 CPU 和其他部件之间供应数据、地址 和掌握信息的传输通道储备器:只读储备器ROM 、随机储备器RAM 功能:用来储备信息输入 /输出 I/O 接口:串 /并行接口等功能:使外部设备和微型机相连算术规律部件 ALU 累加器、寄存器 掌握器 操作系统 OS系统有用程序:汇编、编译、编辑、调试程序等注: CPU 的功能可以进行算术和规律运算;可储存少量数据;能对指令进行译码并执行规定的动作;能和储备器、外设交换数据;供应整修系统所需要的定时和掌握;可以响应其他部件发来的中断请示;2 8086/8088 CPU 由哪两部分组成?它们的主要功能各是什么?是如何和谐工作的?解答:1 名师归纳总结 - - - - - - -第 1 页,共 37 页精选学习资料 - - - - - - - - - 微处理器 CPU: 总线接口部件 BIU :负责与储备器、I/O 端口传送数据 执行部件 EU:负责指令的执行 和谐工作过程:总线接口部件和执行部件并不是同步工作的,它们按以下流水线技术原就来和谐治理: 每当 8086 的指令队列中有两个空字节,或者 8088 的指令队列中有一个空字节时,总线接口部件就会自动把指令取到指令队列中; 每当执行部件预备执行一条指令时,它会从总线接口部件的指令队列前部取出指令的代码, 然后用几个时钟周期去执行指令;在执行指令的过程中,假如必需拜访储备器或者输入 /输出设备,那么,执行部件就会恳求总线接口部件进入总线周期,完成拜访内存或者 输入 /输出端口的操作;假如此时总线接口部件正好处于闲暇状态,那么,会立刻响应执行部件的总线恳求; 但有时会遇到这样的情形,执行部件恳求总线接口部件拜访总线时,总线接口部件正在将某个指令字节取到指令队列中,此时总线接口部件将第一完成这个取指令的操作,然后再去响应执行部件发出的拜访总线的恳求; 当指令队列已满, 而且执行部件又没有总线拜访恳求时,总线接口部件便进入闲暇状态; 在执行转移指令、调用指令和返回指令时,由于程序执行的次序发生了转变,不再是顺 序执行下面一条指令,这时,指令队列中已经按次序装入的字节就没用了;遇到这种情形,指令队列中的原有内容将被自动排除,序段中的指令;总线接口部件会按转移位置往指令队列装入另一个程3 8086/8088 CPU 中有哪些寄存器?各有什么用途?标志寄存器 F 有哪些标志位?各在什么情形下置位?解答:寄存器功能数据寄存器AX 字乘法,字除法,字 I/O BX 查表转换CX 串操作,循环次数DX 字节相乘,字节相除,间接 I/O 变址寄存器SI 源变址寄存器,用于指令的变址寻址DI 目的变址寄存器,用于指令的变址寻址指针寄存器SP 堆栈指针寄存器,与 SS 一起来确定堆栈在内存中的位置BP 基数指针寄存器,用于存放基地址,以使 掌握寄存器IP 掌握 CPU 的指令执行次序8086/8088 寻址更加敏捷PSW 用来存放 8086/8088CPU 在工作过程中的状态 段寄存器 CS 掌握程序区DS 掌握数据区SS 掌握堆栈区ES 掌握数据区标志寄存器F 的标志位:掌握标志:DF、IF、TF ;状态标志:SF、ZF、AF、PF、CF、OF;2 名师归纳总结 - - - - - - -第 2 页,共 37 页精选学习资料 - - - - - - - - - 标志寄存器 F 的各标志位置位情形:·CF:进位标志位;做加法时显现进位或做减法时显现借位,该标志位置 1;否就清 0;·PF:奇偶标志位;当结果的低 8 位中 l 的个数为偶数时,该标志位置 1;否就清 0;·AF:半进位标志位;在加法时,当位 3 需向位 4 进位,或在减法时位 3 需向位 4 借位时,该标志位就置 1;否就清 0;该标志位通常用于对 BCD 算术运算结果的调整;·ZF:零标志位;运算结果各位都为 0 时,该标志位置 1,否就清 0;·SF:符号标志位;当运算结果的最高位为 1 时,该标志位置 1,否就清 0;·TF:陷阱标志位 单步标志位 ;当该位置1 时,将使 8086/8088 进入单步指令工作方式;在每条指令开头执行以前,CPU 总是先测试TF 位是否为 1,假如为 1,就在本指令执行后将产生陷阱中断,从而执行陷阱中断处理程序;该程序的首地址由内存的00004H00007H 4 个单元供应;该标志通常用于程序的调试;例如,在系统调试软件DEBUG 中的 T 命令,就是利用它来进行程序的单步跟踪的;·IF:中断答应标志位;假如该位置 可屏蔽中断;1,就处理器可以响应可屏蔽中断,否就就不能响应·DF:方向标志位;当该位置 1 时,串操作指令为自动减量指令,即从高地址到低地址处理字符串;否就串操作指令为自动增量指令;·OF:溢出标志位;在算术运算中,带符号的数的运算结果超出了8 位或 16 位带符号数所能表达的范畴时,即字节运算大于十127 或小于 128 时,字运算大于十32767 或小于32768 时,该标志位置位;4.8086/8088 系统中储备器的规律地址和物理地址之间有什么关系?表示的范畴各为多少?解答:规律地址:段地址:偏移地址物理地址:也称为肯定地址,由段基址和偏移量两部分构成;物理地址与系统中的储备空间是一一对应的;规律地址与物理地址两者之间的关系为:物理地址段地址×16+偏移地址每个规律段的地址范畴:0000:0000H FFFFH;0001: 0000HFFFFH; ;FFFF:0000HFFFFH;共有 232 个地址,但其中有很多地址是重叠的表达出规律地址的优势,可依据需要便利地写出规律地址,又不影响其精确的物理地址,规律地址与物理地址的关系为多对一的关系;物理地址的地址范畴:00000H FFFFFH;5 已知当前数据段位于储备器的 A1000H 到 B0FFFH 范畴内,问 DS=?解答:A1000H A100 :0000 以 A100H 为段地址的64K 物理地址的范畴是:偏移地址为0000HFFFFH,即 A100:0000HA100 :FFFFH A1000H 0000HA1000H 0FFFFH A1000H B0FFFH , DS A100H ;6 某程序数据段中存有两个字数据 1234H 和 5A6BH ,假设已知 DS=5AA0H ,它们的偏 移地址分别为 245AH 和 3245H ,试画出它们在储备器中的存放情形 解答:存放情形如下图左右两侧的写法均可:5AA0 : 0000H 5AA0 : 245AH 5AA0 : 245BH 5AA0 : 3245H 3 名师归纳总结 - - - - - - -第 3 页,共 37 页精选学习资料 - - - - - - - - - 5AA0 : 3246H ····· ····34H 12H 6BH 5AH 5AA00H 5CE5AH 5CE5BH 5DC45H 5DC46H ·········7 8086/8088CPU 有哪两种工作模式,它们各有什么特点?解答:为了适应各种不同的应用场合,即最小模式与最大模式;所谓最小模式,就是系统中只有一个8086/8088CPU 芯片可工作在两种不同的工作模式下,8086/8088 微处理器,在这种情形下,全部的总线掌握信号, 都是直接由这片 8086/8088CPU 产生的, 系统中的总线掌握规律电路被减到最少;该模式适用于规模较小的微机应用系统;最大模式是相对于最小模式而言的,最大模式用在中、大规模的微机应用系统中;在最大模式下,系统中至少包含两个微处理器,其中一个为主处理器,即 的微处理器称之为协处理器,它们是帮助主处理器工作的;8086/8088CPU ,其它8 假设 8086CPU 工作于最小模式,试指出当CPU 完成将AH 的内容送到物理地址为91001H 的储备单元操作时,以下哪些信号应为低电平:M/ IO 、RD 、WR 、BHE /S7 、DT/ R ;假设 CPU 完成的是将物理地址91000H 单元的内容送到AL 中,就上述哪些信号应为低电平;假设CPU 为 8088 呢?解答: 8086CPU 储备器写 AH9100H0001H 时为低电平的信号:WR、BHE /S7 ;储备器读 9100H00 00HAL 时为低电平的信号:RD 、DT/ R ;8088CPU 储备器写 AH9100H0001H时为低电平的信号:WR、BHE /S7 、M/ IO ;储备器读 9100H0000H AL 时为低电平的信号:M/ IO 、RD 、DT/ R ;9 什么是指令周期?什么是总线周期?什么是时钟周期?它们之间的关系如何?解答:指令周期-CPU 执行一条指令所需要的时间称为一个指令周期Instruction Cycle ;总线周期 -每当 CPU 要从储备器或I/O 端口存取一个字节称为一次总线操作,相应于某个总线操作的时间即为一个总线周期 BUS Cycle ;时钟周期 -时钟周期是 CPU 处理动作的最小时间单位,其值等于系统时钟频率的倒数,时钟周期又称为 T 状态;它们之间的关系:假设干个总线周期构成一个指令周期,一个基本的总线周期由 4 个 T 组成,我们分别称为 T1T4,在每个 T 状态下, CPU 完成不同的动作;4 名师归纳总结 - - - - - - -第 4 页,共 37 页精选学习资料 - - - - - - - - - 10 8086/8088 CPU 有哪些基本操作?基本的读/写总线周期各包含多少个时钟周期?什么情形下需要插入Tw 周期?应插入多少个Tw 取决于什么因素?解答:8086/8088CPU 最小模式下的典型时序有:储备器读写;输入输出;中断响应;系统复位及总线占用操作;一个基本的 CPU 总线周期一般包含四个状态 T 1、T 2、T 3、T 4,即四个时钟周期;在储备器和外设速度较慢时,要在 T 之后插入 1 个或几个等待状态 T w;应插入多少个 T w 取决于 READY 信号的状态,CPU 没有在 T 状态的一开头采样到READY 信号为低电平, 就会在 T 和 T 之间插入等待状态 T w,直到采样到 READY 信号为高电平;11 试说明 8086/8088 工作在最大和最小模式下系统基本配置的差异;8086/8088 微机系统中为什么肯定要有地址锁存器?需要锁存哪些信息?解答: 最大模式配置和最小模式配置有一个主要的差异:就是在最大模式下,需要用外加电路来对 CPU 发出的掌握信号进行变换和组合,以得到对储备器和I/O 端口的读 /写信号及对锁存器 8282和对总线收发器8286等等的掌握信号;8288 总线掌握器就是完成上面这些功能的专用芯片;为多中断源的需要,常采纳中断优先权掌握电路如Intel8259A ; 8086/8088 系统肯定要有地址锁存器 由于高四位地址和状态信号是从同一组引脚上分时送出的,低 16 位地址和数据是从同一组引脚上分时传输的,所以必需把地址信息锁存起来;需要锁存的信息:地址信号、进行锁存;BHE /S 7 和 IO/M 8086 为 M/ IO 信号12试简述 8086/8088 微机系统最小模式下从存器储读数据时的时序过程;解答:正常的储备器读总线操作占用 4 个时钟周期,通常将它们称为 4 个 T 状态即 T1T4; T1 状态, IO/M=0 ,指出要拜访储备器;送地址信号 A19-0 ,地址锁存信号 ALE 有效,用来掌握 8282 锁存地址; DT/ R =0 ,掌握 8286/8287 工作在接收状态读; T2 状态, A19A16 送状态 S6 S3,AD7 AD0浮空,预备接收数据;同时,RD 0,表示要进行读操作,而 DEN =0 作为 8286/8287 的选通信号,答应进行数据传输; T3 状态,从指定的储备单元将数据读出送AD7 AD0 ;假设储备器速度较慢,不能准时读出数据的话,就通过 READY 引脚通知 CPU, CPU 在 T3 的前沿采样 READY ,假如READY 0,就在 T3 终止后自动插入 1 个或几个等待状态 TW ,并在每个 TW 的前沿检测 READY ,等到 READY 变高后,就自动脱离 TW 进入 T4; T4 状态, CPU 采样数据线,获得数据;RD 、DEN 等信号失效;5 名师归纳总结 - - - - - - -第 5 页,共 37 页精选学习资料 - - - - - - - - - CH02 8086 8088 指令系统1假定 DS=2000H ,ES=2100H , SS=1500H,SI=00A0H ,BX=0100H , BP=0010H ,数据 变量 VAL 的偏移地址为 0050H ,请指出以下指令源操作数是什么寻址方式?源操作数在哪 里?如在储备器中请写出其物理地址是多少?1MOV AX ,0ABH 2MOV AX ,100H 3MOV AX ,VAL 4MOV BX ,SI 5MOV AL ,VALBX 6MOV CL , BXSI 7MOV VALSI,BX 8MOV BPSI ,100 解答:1MOV AX ,0ABH 寻址方式:立刻寻址;源操作数在数据线上;物理地址:无2MOV AX ,100H 寻址方式:直接寻址;源操作数在储备器中;物理地址:DS 16+100H2000H*16+100H 20220H 3MOV AX ,VAL 寻址方式:直接寻址;源操作数在储备器中;物理地址:DS 16+VAL 2000H*16+0050H 20050H 4MOV BX ,SI 寻址方式:寄存器间接寻址;源操作数在储备器中;物理地址:DS16+SI2000H*16+00A0H 200A0H 5MOV AL ,VALBX 寻址方式:变址寻址;源操作数在储备器中;物理地址:2000H*16+0050H+0100 20220H 6MOV CL ,BXSI 寻址方式:基址加变址寻址;源操作数在储备器中;物理地址:2000H*16+0100H+00A0H 201A0H 7MOV VALSI,BX 寻址方式:寄存器寻址;源操作数在寄存器中;物理地址:无8MOV BPSI,100 寻址方式:立刻寻址;源操作数在;物理地址:无DS 16+VAL+BX DS16+BX+SI 2设有关寄存器及储备单元的内容如下:DS=2000H , BX=0100H , AX=1200H ,SI=0002H , 20220H=12H , 20221H=34H , 20222H=56H , 20223=78H ,21200=2AH , 21201H=4CH , 21202H=0B7H , 21203H=65H ;试说明以下各条指令单独执行后相关寄存器或储备单元的内容;1MOV AX ,1800H 2 MOV AX ,BX 3MOV BX ,1200H 4MOV DX ,1100BX 5MOV BXSI,AL 6MOV AX ,1100BXSI 解答:题号指令执行结果1 MOV AX , 1800H AX 1800H 2 MOV AX , BX AX 0100H 3 MOV BX ,1200H BX 4C2AH 4 MOV DX , 1100BX DX 4C2AH 5 MOV BXSI,AL 20222H 00H 6 名师归纳总结 - - - - - - -第 6 页,共 37 页精选学习资料 - - - - - - - - - 6 MOV AX , 1100BXSI AX65B7H 3假定 BX=0E3H ,变量 VALUE=79H,确定以下指令执行后的结果操作数均为无符号数;对 3、6,写出相应标志位的状态;1ADD VALUE,BX 2AND BX , VALUE 3CMP BX , VALUE 4XOR BX ,0FFH 5DEC BX 6TEST BX , 01H 解答:题号指令执行结果1 ADD VALUE , BX BX 015CH 2 AND BX ,VALUE BX0061H 3 CMP BX ,VALUE BX 00E3HCF=ZF=OF=SF=0 , AF=PF=1 4 XOR BX ,0FFH BX 001CH 5 DEC BX BX 00E2H 6 TEST BX , 01H BX 00E3HCF=ZF=OF=SF=AF=PF=0 4已知 SS=0FFA0H ,SP=00B0H ,先执行两条把 8057H 和 0F79H 分别进栈的 PUSH 指 令,再执行一条 POP 指令,试画出堆栈区和 SP 内容变化的过程示意图;标出储备单元的地址解答:00ADH 00AEH 00AFH 0FFA0 : 00B0H ···FFAACH FFAADH FFAAEH FFAAFH FFAB0H ···00ACH X FFAABH 00ADH 00AEH 00AFH 0FFA0 : 00B0H ···57H 80H FFAACH FFAADH FFAAEH FFAAFH FFAB0H ···00ACH X FFAABH 初始状态; SP 00B0H PUSH00ADH AX ; AX 8057H SP 00AEH 7 名师归纳总结 - - - - - - -第 7 页,共 37 页精选学习资料 - - - - - - - - - 00AEH 00AFH 0FFA0 : 00B0H ···79H 0FH 57H 80H FFAACH FFAADH FFAAEH FFAAFH FFAB0H ···00ACH X FFAABH 00ADH 00AEH 00AFH 0FFA0 : 00B0H ···BX ; BX 0F79H SP 00ACH POPBX ; SP 00AEH 57H 80H FFAACH FFAADH FFAAEH FFAAFH FFAB0H ···00ACH X FFAABH PUSH堆栈段 SS0FFA0H 堆栈段 SS0FFA0H 堆栈段 SS0FFA0H 堆栈段 SS0FFA0H 5已知程序段如下:MOV AX ,1234H MOV CL ,4 ROL AX ,CL DEC AX MOV CX ,4 MUL CX CF,SF 及试问: 1每条指令执行后,AX 寄存器的内容是什么?2每条指令执行后,ZF 的值分别是什么?3程序运行终止时,AX 及 DX 寄存器的值为多少?指令执行结果AX CF SF ZF MOV AX ,1234H AX 1234H ××× MOV CL ,4 AX 1234H ×××ROL AX ,CL AX 2341H 1 0 0 DEC AX AX 2340H 1 0 0 MOV CX ,4 AX 2340H 1 0 0 MUL CX AX8D00H ,DX=0000H 0 0 0 8 名师归纳总结 - - - - - - -第 8 页,共 37 页精选学习资料 - - - - - - - - - 6写出实现以下运算的指令序列;假定 X、Y 、Z、W、R 都为字变量1Z=W+ Z+X 2Z=W- X+6 -R+93Z= W*X /R+6 4Z= W-X /5*Y *2 解答: 1 Z=W+ Z+X 题号指令题号指令1 Z=W+ Z+X 2 Z=W- X+6 -R+9MOV AX ,Z MOV DX ,R MOV BX ,X ADD DX ,9 MOV CX ,W MOV BX ,X ADD BX ADD BX,6 ADC CX MOV AX,W MOV Z ,AX SUB AX ,BX SUB AX , DX MOV Z ,AX 3 Z=W*X /R+6 4 Z= W-X /5*Y *2 MOV DX ,0 MOV AX ,W MOV AX ,W MOV BX ,X MOV BX ,X SUB AX ,BX MUL BX MOV DX,0 PUSH AX MOV CL,5 MOV AX ,R DIV CL ADD AX ,6 MOV BX ,Y MOV CX ,AX MUL BX POP AX MOV CL ,2 DIV CX MUL CL MOV Z ,AX MOV Z ,AX MOV Z+1 ,DX MOV Z+1 ,DX 1SHR DX ,1 2SHL DL , 1 3SAL DH ,1 4SAR DX ,CL 5ROR DX , CL 6ROL DL ,CL 7RCR DL ,1 8RCL DX ,CL 解答:题号指令执行结果1 SHR DX ,1 DX=0110 0100 1101 110064DCH 0010C972H 3 SAL DH ,1 DX=1001 0010 1011 100192B9H 2 SHL DL ,1 DX=1100 1001 0111 4 SAR DX ,CL DX=1111 1001 0011 0111F937H 5 ROR DX ,CL DX=0011 1001 0011 01113937H 6 ROL DL ,CL DX=1100 1001 1100 1101C9CDH 7 RCR DL ,1 DX=1100 1001 1101 1100C9DCH 8 RCL DX ,CL DX=0100 1101 1100 10114DCFH 8已知 DX=1234H ,AX=5678H ,试分析以下程序执行后 序完成了什么功能?MOV CL ,4 SHL DX , CL MOV BL ,AH SHL BL ,CL 9 DX、 AX 的值各是什么?该程名师归纳总结 - - - - - - -第 9 页,共 37 页精选学习资料 - - - - - - - - - SHR BL ,CL OR DL ,BL 解答: DX=2345H ,AX=6780H ;该程序完成的功能如下图,将左移四位;DX DX AX 1 2 3 4 5 6 7 8 DX AX 2 3 4 0 6 7 8 0 2 3 4 5 6 7 8 0 AX 9试分析以下程序段:ADD AX ,BX JNC L2 SUB AX , BX JNC L3 JMP SHORTL5 假如 AX 、BX 的内容给定如下:AX BX 114C6H 80DCH 2B568H 54B7H 问该程序在上述情形下执行后,程序转向何处?DX ,AX 拼装成双字后,解答: 1 AX AX+BX 14C6H+80DCH 95A2H ; CF0;无进位,转移至 L2;2AX AX+BX B568H+54B7H 0A1FH ;CF 1;有进位,连续执行;AX AX-BX 0A1FH+54B7H B568H ;CF1;有借位,连续执行;无条件转移至 SHORTL5 10编写一段程序,比较两个 于 NEWS 字符串,就执行5 字节的字符串 OLDS 和 NEWS ,假如 OLDS 字符串不同NEW_LESS ,否就次序执行;解答:编程如下,说明:左测程序为常规编法, 两个字符串在一个数据段中;右测的程序要求OLDS 在数据段中, NEWS在附加段中,利用串操作的指令是可行的LEA SI ,OLDS ; LEA SI ,OLDS LEA DI ,NEWS ; LEA DI ,NEWS MOV CX ,5; MOV CX ,5 NEXT : MOV AL ,SI ; CLD MOV BL ,DI ; REPE CMPSB CMP AL ,BL; JNZ NEW_LESS JNZ NEW_LESS ; INC SI ; JMP EXIT INC DI ; NEW_LESS :LOOP NEXT ; EXIT : JMP EXIT NEW_LESS : 10 名师归纳总结 - - - - - - -第 10 页,共 37 页精选学习资料 - - - - - - - - - EXIT : 11假设在数据段中从字节变量 含TABLE 相应的单元开头存放了015 的平方值, 试写出包有 XLAT 指令的指令序列查找N015的平方;设N 的值存放在CL 中解答:MOV BX ,OFFSET TABLE ;LEA BX ,TABLE MOV CL ,N MOV AL ,CL XLAT 12有两个双字数据串分别存放在 果放在 ASC3 中低字放低地址;ASC1 DW 578 ,400 ASC2 DW 694 ,12 ASC3 DW ?,?解答:编程如下,LEA SI ,ASC1 LEA DI ,ASC2 LEA BX , ASC3 MOV CX ,2 CLC NEXT : MOV AX ,SI MOV DX ,DI SBB AX , DX MOV BX,AX INC SI INC SI INC DI INC DI INC BX INC BX LOOP NEXT ASC1 和 ASC2 中低字放低地址,求它们的差,结11 名师归纳总结 - - - - - - -第 11 页,共 37 页精选学习资料 - - - - - - - - - CH03 汇编语言程序设计1以下语句在储备器中分别为变量安排多少字节空间?并画出储备空间的安排图;VAR1 DB 10 ,2 VAR2 DW 5 DUP ?, 0 VAR3 DB HOW ARE YOU ? , 3 DUP1,2VAR4 DD -1 , 1,0 解答:字节空间-VAR1 :2;VAR2 :12;VAR3 :20;VAR4 :12;储备空间的安排图:DS:0000 0010 0020 0A 02 00 00 00 00 00 00 00 00 00 00 00 00 48 4F 57 20 20 41 52 45 20 20 59 4F 55 3F 01 02 01 02 01 02 FF FF FF FF 01 00 00 00 00 00 00 00 2假定 VAR1 和 VAR2 为字变量, LAB 为标号,试指出以下指令的错误之处;1ADD VAR1 ,VAR2 2SUB AL ,VAR1 3JMP LABCX 4 JNZ VAR1 5 MOV 1000H ,100 6SHL AL , 4 解答: 1两个操作数中至少有一个为寄存器;2AL 为字节, VAR1 为字变量,不匹配;3 中不能用 CX ,LAB 为标号,非变量;4转向地址应为标号,不能是变量;5目的操作数的类型不确定;6SHL 指令中,当所移位数超过1 时,必需用CL 或 CX 来取代所移位数;3对于下面的符号定义,指出以下指令的错误;A1 DB ?A2 DB 10 K1 EQU 1024 1 MOV K1 ,AX 2MOV A1 ,AX 3CMP A1 ,A2 4K1 EQU 2048 解答: 1K1 为常量,不能用 MOV 指令赋值;2A1 为字节, AX 为字变量,不匹配;3A1 未定义,无法做比较指令;4K1 重新赋值前,必需用: PURGE 释放;4数据定义语句如下所示FIRST DB 90H ,5FH,6EH,69H SECOND DB 5 DUP. THIRD DB 5 DUP. 自 FIRST 单元开头存放的是一个四字节的十六进制数低位字节在前 ,要求 : 编一段程序将这个数左移两位后存放到自 SECOND 开头的单元 ,右移两位后存放到自12 名师归纳总结 - - - - - - -第 12 页,共 37 页精选学习资料 - - - - - - - - - THIRD 开头的单元; 留意保留移出部分 DATA SEGMENT FIRST DB 90H ,5FH,6EH,69H 解答:SECOND DB 5 DUP. THIRD DB 5 DUP. DATA ENDS CODE SEGMENT ASSUME CS :CODE ,DS:DATA START :MOV AX ,DATA MOV DS ,AX LEA SI ,FIRST LEA DI ,SECOND MOV CX ,2 CLC ;左移 2 位MOV AX ,SI ;AX=5F90H 为低十六位数据 INC SI INC SI MOV DX ,SI ;DX=696EH 为高十六