汇编语言接口技术答案例题_第1页
汇编语言接口技术答案例题_第2页
汇编语言接口技术答案例题_第3页
汇编语言接口技术答案例题_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、例1已知X和Y是数据段中的两个无符号字节单元,用程序完成Z=(X2+Y2)/2的计算。DATA SEGMENT X DB 15 Y DB 34 Z DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV AL,X MUL AL ;计算X2 MOV BX,AX MOV AL,Y MUL AL ;计算Y2 ADD AX,BX ;计算X2+Y2 MOV CL,2 ;计算(X2+Y2)/2 DIV CL MOV Z,AL MOV AH,4CH INT 21H ;返回DOS CODE ENDS END

2、START 例2从键盘读入两个一位数(假设按下的肯定是数字键),编程序显示它们的乘积。CODE SEGMENT ASSUME CS:CODESTART:MOV AH,1 INT 21H MOV BL,AL MOV AH,1 INT 21H SUB AL,30H SUB BL,30H MUL BL ;积在AX中 MOV BL,10 DIV BL ADD AX,3030H MOV BX,AX MOV DL,BL MOV AH,2 INT 21H ;输出十位数 MOV DL,BH MOV AH,2 INT 21H ;输出个位数 MOV AH,4CH INT 21H ;返回DOSCODE ENDS E

3、ND START 20 例4 计算 y = Ai i =l设Al,A2,A20是一组无符号16位二进制数。分析:定义数组名TABL存放A1,A2,A20,和存放于单元 YY 中。中间结果存于寄存器 AX 中,BX 寄存器为地址指针,CX 寄存器作计数器。程序如右:DATA SEGMENT TABL DW A1,A2,A20 YY DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV AX,0 MOV BX,OFFSET TABL MOV CX,20 ;初始化 LOP: ADD AX,

4、BX ;循环体 ADD BX ,2 ;修正 LOOP LOP ;控制部分 MOV YY,AX MOV AH,4CH INT 21H CODE ENDS END START例5现将以AREA1为首地址的100个字节数据搬移到以AREA2为首地址的内存中去。DATA SEGMENT AREA1 DB 100DUP(?) AREA2 DB 100DUP(?)DATA ENDSCODE SEGMENTASSUMECS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV SI,OFFSET AREA1 MOV DI,OFFSET AREA2 MOV CX,100AGA

5、IN:MOV AL,SI MOV DI,ALINC SI INC DI LOOP AGAIN MOV AH,4CH INT 21HCODE ENDS END START习题29答案DATA SEGMENT NUM DB 1ABaf.DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV CX,100 MOV BX,0LOOP1:CMP NUMBX,39H JA A2 SUB NUMBX,30H JMP OUT1A2: CMP NUMBX,5AH JA A3 SUB NUMBX,37H JMP OUT1

6、A3: SUB NUMBX,57HOUT1:INC BX LOOP LOOP1 MOV AH,4CH INT 21HCODE ENDS END START习题31答案DATA SEGMENT STR DB 1ASAB. N EQU $-STR RESULT DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV CX,N-1 MOV SI,0 MOV DL,0A1:CMP STRSI,41H JNZ A2 CMP STRSI+1,42H JNZ A2 INC DLA2: INC SI LOOP

7、 A1 MOV RESULT,DL MOV AH,4CH INT 21HCODE ENDS END START习题32答案DATA SEGMENT DAT DB 5AH B DB ? C DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV AL,DAT MOV AH,0 MOV BL,10DIV BLMOV DL,ALCALL ZHUANHUANMOV B,DLMOV DL,AHCALL ZHUANHUANMOV C,DLMOV AH,4CHINT 21HZHUANHUAN PROC CM

8、P DL,9 JBE A1 ADD DL,07H A1: ADD DL,30H ZHUANHUAN ENDPCODE ENDS END START例1:若nh用8253的计数通道1,工作在方式0,按8位二进制计数,初值为128,试编写初始化程序,设口地址为48H-4BH。 解:控制字为01010000=50H,8位计数初值为80H moval,50H;设置通道1控制字 out4BH, al moval, 80H;写通道1计数初值,只写低 out49H, al ;8位例2:若用8253通道1,工作在方式1,按二-十进制计数,计数初值为2010,口地址同上,试编写初始化程序。解:通道控制字为01110011=73H计数初值高8位为20,低8位为10(注意:实际编程时要写20H和10H)moval, 73H;写通道1控制字out4BH, almoval, 10H;写通道1计数初值低8位out49H, almoval, 20H;写通道1计数初值高8位out49H, al 实验2:编写大写字母转换小写并显示的程序,如果输入的不是大写字母,需要重新输入。(提示:A:41H; Z:5AH; a:61H)STAR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论