ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:25.04KB ,
资源ID:10143745      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10143745.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(汇编语言习题及答案.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

汇编语言习题及答案.docx

1、汇编语言习题及答案汇编语言复习题简答题1.存储器地址为什么要分段?物理地址是如何形成的? 2.IBM PC机的寻址方式(与数据有关的寻址方式)有几种?各举一例说明。 3.80x86微机的存储器中存放信息如下图所示。试读出30022H与30024H字节单元的内容与30021H和30022H字单元的内容。4.现有(DS) 2000H,(BX)0100H,(SI) 0002H, (20100)= 12H, (20101)=34H, (20102)= 56H, (20103)=78H, (21200)=2AH, (21201)= 4CH, (21202)=B7H, (21203) = 65H,试说明下

2、列各条指令执行完后AX的内容。1)MOV AX,1200H2)MOV AX,BX3)MOV AX,1200H4)MOV AX,BX5)MOV AX,1100BX5.完成下列各式补码数的运算,并根据结果设置标志位SF,CF,ZF,OF,指出运算结果是否有效1)01001001b+10011101b2)01000001b-10101011b6.有符号定义语句如下:BUFF DB 1,2,3,123EBUFF DB 0L EQU EBUFF-BUFF问L的值为多少?为什么?答案:1、IBM PC系列机的字长为16位,能够访问的最大存储空间64KB,而在IBM PC内存为1MB的情况下,访问这1MB的

3、存储空间需要20位。为了解决字长为16位的机器访问1MB的存储空间,将1MB空间每16B分为一段,共64K段,以16位段地址:16位偏移地址的形式组成,物理地址通过如下方式计算:物理地址 段地址10h + 偏移地址2.IBM PC机的寻址方式有7种:1)立即寻址:MOV AX, 1234H;2)寄存器寻址:MOV AX, BX;3)直接寻址:MOV AX, 1234H;4)寄存器间接寻址:MOV AX, BX;5)寄存器相对寻址:MOV AX, 20HBX;6)基址变址寻址:MOV AX, BXSI;7)相对基址变址寻址:MOV AX, 100HBXSI;3.解:(30022H)= 12H (

4、30024H) = 56H (30021H) = 12CDH (30022H) = 3412H4.解:(1) MOV AX,1200H解:(AX)=1200H(2)MOV AX,BX解:(AX)= 0100H(3)MOV AX,1200H解:物理地址(DS)10H1200H(AX) = 4C2AH(4)MOV AX,BX解:物理地址(DS)10H0100H20100H(AX)3412H(5)MOV AX,1100BX解:物理地址(DS)10H0100H1100H21200H(AX)4C2AH5. (1)01001001b+10011101b解: 01001001 10011101 111001

5、10 由此可得:SF=1 CF=0 ZF=0 OF = 0 计算结果有效(2)01000001b-10101011b 解: 01000001 10101011 01000001 + 01010101 10010110 由此可得:SF=1 CF=1 ZF=0 OF=1 减法计算中,被减数、减数符号相反,结果符号与减数相同,OF=1计算结果无效6.有符号定义语句如下:BUFF DB 1,2,3,123EBUFF DB 0L EQU EBUFF-BUFF问L的值为多少?为什么?解:根据数据段的定义,BUFF长度定义为6个字节,分别存放1,2,3,1,2,3,而后紧接着为EBUFF的地址,故L值为6程

6、序题1 MOV BL,64H MOV CL,03H XOR AX,AX AGAIN:ADD AL,BL ADC AH,0 DEC CL JNZ AGAIN 问:(1)该程序段完成的功能是:(2)AX=_。2 已知数据段中定义 DAT1 DB 12H,34H,56H,78H MOV CX,0 MOV AX,WORD PTR DAT1 MOV CL,DAT1+3当程序段执行完后AX=_,CX=_。3 DA1 DB 83H,72H,61H,94H,5AH MOV CX,WORD PTR DA1 AND CX,0FH MOV AL,DA1+3 SHL AL,CL 上述指令序列执行后,AL=_,CL=_

7、。4、 某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串COMPUTER(不显示字符$!).试在空白处填上适当的一条指令。 STRING DBCOMPUTER,$MOV BX,0FFSET STRINGLOP:MOV DL,BX MOV AH,02H INT 21H _ _ JNE LOP答案:1、AX=012CH,将AX内容乘3送BX中2、AX=3412H,CX=0078H3、AL=0A0H,CL=03H4、INC BX CMP BX,24H名词解释1.机器语言2.汇编语言3.堆栈4.物理地址5.汇编程序 6.SP:7.IP:答案:1、 机器语言:能被计算直接识别的恶语言;2

8、、 汇编语言:用指令的助记符、符号地址、标号等符号书写程序的语言; 3、 堆栈:以后进先出(或先进后出)方式工作的存储空间; 4、 物理地址:唯一代表存储空间中每个字节单元的地址;5、 汇编程序:把汇编语言程序翻译成机器语言的系统程序。6、 SP:保存当前栈顶地址的寄存器;7、 IP:指示下一条要执行指令的地址的寄存器编程题1、试编制一程序段,用串操作指令实现以DA_BY为首址的20H个字节单元中存放相同字符Y(设DA_BY存储区已有ES指向)。2、试编制一源程序,统计DA1字单元中含0的个数,如统计的个数为 奇数,则将进位位置1,否则进位位清0。 DATA SEGMENT DA1 DW XX

9、XXDATA ENDS3、已知在N到N+i的存储区内有一ASCII码字符串(共i+1个),试编写一个汇编语言程序,将此字符串传送到NI到NI+i单元中,并使字符串的顺序与原顺序相反。(只写出关键代码段即可)(6)1、编写程序,求解sum= =a1+a2+a100,要求写出完整程序。(9)2、试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。只写关键代码段即可(8)3、试编写一程序,比较两个字符串STRING1与STRING2所含有的字符是否完全相同,若相同则显示“MATCH”,如不同则显示“NO MATCH”,字符串内容自定义,要求写出完整的程序。(12)答案:1、 LEA

10、DI,DA_BY MOV CX,32 MOV AL,Y CLD REP STOSB。2、CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA SI,DA1 MOV CX,16 XOR BL,BL AGAIN: MOV AL,SI HL AL,1 JC NEXT INC BL NEXT:INC SI LOOP AGAIN TEST BL,01H JNE L1 CLC JMP DONE L1: STC DONE: MOV AH,4CH INT 21H CODE ENDS END START 3、解: LEA SI,

11、N LEA DI,NI ADD DI,I MOV CX, I ADD CX,1MOVE: CLD LODSB STD STOSB LOOP MOVE4、解: DATA SEGMENT ARR DW a1, a2, a3, a4, a5, a6, , a100 SUM DW ? DATA ENDS CODE SEGMENT ASSUME DS: DATA, CS: CODE START: MOV AX, DATA MOV DS, AX LEA BX, ARR MOV CX, 100 MOV AX, 0 AGAIN: ADD AX, BX ADD BX, 2 LOOP AGAIN MOV AX,

12、4C00H INT 21H CODE ENDS END START5、解: BEGIN: MOV AH, 01H INT 21H CMP AL,a JB FIN CMP AL,z JA FIN SUB AL, 20H MOV DL, AL MOV AH, 02H INT 21H JMP BEGINFIN: RET6、解: DATA SEGMENT STRING1 DB HERE YOU ARE STRING2 DB HERE YOU AER YES DB MATCH, 0DH, 0AH, $ NO DB NO MATCH, 0DH, 0AH, $ DATA ENDS CODE SEGEMTN

13、ASSUME CS:CODE, DS: DTAT START: MOV AX, DATA MOV DS, AX BEGIN: LEA AL, STRING1 LEA DL, STRING2 MOX CX, STRING2 STRING1 REP CMPSB JNE DISPNO MOV AH, 09H LEA DX, YES INT 21H JMP EXIT DISPNO: MOV AH, 09H LEA DX, NO INT 21H EXIT: MOV AX, 4C00H INT 21H CODE ENDS END START阅读下列各指令序列段,写出它们各完成什么功能1SUB AX, CX

14、SBB DX, BX2PUSH AXPUSH BXPOP AXPOP BX3假设DS,ES初始化到同一数据段CLD MOV CX, 20 LEA SI, STRING1 LEA DI, STRING2 REP MOVSB4CLDMOV CX,COUNTMOV AL, ;空格LEA DI, CHAR_FIELDREP STOSB5 MOV CX, MMOV SI, 0NEXT: INC ARRAYSI ADD SI, 2 LOOP NEXT6 MOV DX, A+2MOV AX, AADD AX, AADC DX, A+2CMP DX, B+2JL L1JG L2CMP AX, BJB L1L2

15、:MOV AX, 2JMP EXITL1: MOV AX, 1EXIT: HLT答案:1、SUB AX, CXSBB DX, BX解:完成双精度数减法功能,即(DX, AX)(DX, CX) (DX, AX)2、PUSH AXPUSH BXPOP AXPOP BX解:将AX与BX的内容交换3、假设DS,ES初始化到同一数据段CLD MOV CX, 20 LEA SI, STRING1 LEA DI, STRING2 REP MOVSB 解:将STRING1中的20个字符移到STRING2中4、CLDMOV CX,COUNTMOV AL, ;空格LEA DI, CHAR_FIELDREP STOSB 解:用空格符将字符区CHAR_FIELD中的字符全部清除,字符数存在COUNT单元中5、 MOV CX, MMOV SI, 0NEXT: INC ARRAYSI ADD SI, 2 LOOP NEXT解:将数组ARRAY的M个单元分别加16、 MOV DX, A+2MOV AX, AADD AX, AADC DX, A+2CMP DX, B+2JL L1JG L2CMP AX, BJB L1L2:MOV AX, 2JMP EXITL1: MOV AX, 1EXIT: HLT 解:如果2(A2,A) (B2,B)则AX1,若2(A2,A) (B2,B),则AX2

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1