微机原理程序习题..doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理程序习题.

4.1 请分别用DB、DW、DD伪指令写出在DATA开始的连续8个单元中依次存放数据11H、22H、33H、44H、55H、66H、77H、88H的数据定义语句。 解:DB、DW、DD伪指令分别表示定义的数据为字节型、字类型及双字类型。其定义形式为: DATA DB 11H, 22H, 33H, 44H, 55H, 66H, 77H, 88H DATA DW 2211H, 4433H, 6655H, 8877H DATA DD , 4.2 若程序的数据段定义如下,写出各指令语句独立执行后的结果。 DSEG SEGMENT DATA1 DB 10H, 20H, 30H DATA2 DW 10 DUP (?) String DB ‘123’ DSEG ENDS MOV AL, DATA1 MOV BX, offset DATA2 LEA SI, String ADD DI,SI 解:先取变量String的偏移地址送寄存器SI, 之后将SI的内容与DI的内容相加并将结果送DI。指令执行后,SI=0017H, DI=DI+0017H 4.3 试编写求两个无符号数双字长数之和的程序。两数分别在MEM1和MEM2单元中,其和放在SUM单元。 DSEG SEGMENT MEM1 DW 1122H, 3344H MEM1 DW 5566H, 7788H SUM DW 2 DUP(?) DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG, DS:DSEG START: MOV AX, DSEG MOV DS,AX LEA BX, MEM1 LEA SI, MEM2 LEA DI, SUM MOV CL,2 CLC AGAIN: MOV AX,[BX] ADC AX, [SI] MOV [DI], AX ADD BX, 2 ADD SI, 2 ADD DI, 2 LOOP AGAIN MOV AX, 4C00h INT 21h CSEG ENDS END START 4.4 试编写程序,测试AL寄存器的第4位(B4)是否为零? 如:TEST AL, 10H JZ NEXT …. NEXT:….. 或者: MOV CL,4 SHL AL, CL JNC NEXT …… NEXT:….. 4.5 试编写程序,将BUFFER中的一个8位二进制数转化为ASCII码,并按位数高低顺序存放ANSWER开始的内存单元中。 解: DSEG SEGMENT BUFFER DB ? ANSWER DB 3 DUP(?) DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG, DS:DSEG START: MOV AX, DSEG MOV DS, AX MOV CX, 3 LEA DL, ANSWER XOR AX,AX MOV AL, BUFFER MOV BL,0AH AGAIN: DIV BL ADD AH,30H MOV [DI],AH INC DI AND AL,AL JZ STO MOV AH, 0 LOOP AGAIN STO: MOV AX, 4C00H INT 21H CSEG ENDS END START 4.6 假设数据项定义如下: DATA1 DB ‘HELLO!GOOD MORNING’ DATA2 DB 20 DUP(?) 用串操作指令编写程序段,使其分别完成一下功能。 从左到右将DATA1中的字符串传送到DATA2中; 传送完后,比较DATA1和DATA2中的内容是否相同; 把DATA1中的第3个字节和第四个字节装入AX; 将AX的内容存入DATA2+5开始的字节单元中; 解:(1) MOV AX, SEG DATA1 MOV DS, AX MOV AX, SEG DATA2 MOV ES, AX LEA SI, DATA1 LEA DI, DATA2 MOV CX,20 CLD REP MOVSB (2) EA SI, DATA1 LEA DI, DATA2 MOV CX,20 CLD REPE CMPSB (3)LEA SI, DATA1 ADD SI,2 LODSW (4) LEA DI, DATA2 ADD DI, 5 MOV CX, 7 CLD REP STOSW 4.7 执行下列指令后,AX寄存器中的内容是多少? TABLE DW 10,20,3

文档评论(0)

dbtx + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档