8086指令系统汇编实训实例(2)

2019-03-23 11:17

2. 显示所有ASCII码的程序 asci.com

MOV CX,0100 MOV DL,00

MOV AH,02 ;0105 INT 21

INC DL LOOP 0105 INT 20

3. 由键盘输入任意字符串,然后显示出来 key.com

MOV DX,0116 ;0116:字符个数,0117:实际输入数(包含$),0118:实际数 MOV AH,0A INT 21 MOV DL,0A MOV AH,02 INT 21 MOV DX,0118 MOV AH,09 INT 21

INT 20 ;0114 DB 20 ;0116

0116 06

4. 显示一字符串 stri.com

MOV DX,109 MOV AH,09? INT 21? INT 20?

DB 'May I help you? $' ;0109 ?

5. 将1~16放入以2000H开始的单元中; asm-2000.com

MOV BX,2000 MOV CX,0010 MOV AL,01

MOV [BX],AL ;0108 INC AL INC BX LOOP 0108 INT 20

6

6. 将1000H开始的4个单元中的大数找出来; dashu.com

MOV BX,1000

MOV AL,[BX] MOV CX,0003

INC BX ;0108 CMP AL,[BX] JNB 010F MOV AL,[BX]

DEC CX ;010F JNZ 0108 MOV DL,AL INT 20

7. 比较连续两个单元中数的大小,相等=88,不相等=FFH; comp50-2.COM

MOV SI,1000 MOV DI,2000 MOV CX,0002

MOV AL,[SI] ;0109 CMP AL,[DI] JZ 0113 MOV AL,FF JMP 0119

INC SI ;0113 INC DI LOOP 0109 MOV AL,88

INT 20 ;0119

8. 在1000h开始的100个单元中,搜索“$”字符,将字符的地址放入BX中,搜索不到则BX=FFFFH scas.com

MOV DI,1000 MOV AL,24 MOV CX,0064 CLD REPNZ SCASB

JZ 0112 MOV BX,FFFF JMP 0115

DEC DI ;0112

7

MOV BX,DI INT 20

9. 将5000为首的4个数,测试该数的最高位,为1送2000单元,为0送1000号单元; stor-lod.com

MOV SI,5000 MOV DI,1000 MOV BX,2000 MOV CX,0004 CLD LODSB

TEST AL,80 JNZ 0115 STOSB

JMP 011A

XCHG BX,DI ;0115 STOSB

XCHG BX,DI DEC CX JNZ 010D

INT 20 ;010D

10. 比较SI和DI的内容,相等则AL=00,不等则AL=FFH;COMPS.COM

MOV SI,1000 MOV DI,2000 CLD

MOV CX,0002 REPZ CMPSB

JZ 0112 MOV AL,FF JMP 0114

MOV AL,00 ;0112 INT 20 ;0114

11. 人机对话程序

:0100 DB “What’s your name? $” :0113 DB “Please input your code? $” :012c DB “OK! $”

:0131 MOV DX,0100 ;显示What’s your name?

8

MOV AH,09 INT 21 MOV DL,0A MOV AH,02 INT 21 MOV DL,0D INT 21

MOV DX,0200 ;从键盘输入名字 MOV AH,0A INT 21 MOV DL,0A MOV AH,02 INT 21 MOV DL,0D INT 21

MOV DX,0202 MOV AH,09 INT 21 MOV DL,0A MOV AH,02 INT 21 MOV DL,0D INT 21

MOV DX,0112 MOV AH,09 INT 21 MOV DL,0A MOV AH,02 INT 21 MOV DL,0D INT 21

MOV DX,0210 MOV AH,0A INT 21 MOV DL,0A MOV AH,02 INT 21 MOV DL,0D INT 21

MOV DX,012A MOV AH,09 INT 21 INT 20

;把名字显示出来 ;显示Please input your code? ;从键盘输入密码 ;显示OK! 9

:0200 DB 06 :0210 DB 08

七、汇编语言上机过程

1.上机前的软件准备:MASM510,Uedit32 2. 在MS-DOS操作系统下操作

1. 文本编辑器 (如:EDIT.COM ,Uedit32等) ○

2. 汇编程序 (如:MASM.EXE ,TASM.EXE 等) ○

3. 连接程序 (如:LINK.EXE 等) ○

4. 调试程序 (如:DEBUG.EXE 等) ○

八、汇编源程序

1.在屏幕上显示一个字符的源程序程序:

program segment ;定义段,段名“program”可任意取

assume cs:program ;把上面段的段基址放入 CS,即程序所在段的位置 mov dl,41h ;将显示字符的ascii码装入DL

mov ah,2 ;21功能的2号子功能调用,向屏幕输出一个字符 int 21h ;21号DOS功能调用 mov ah,4ch ;汇编结束,DOS返回 int 21h

program ends ;段终止 end ;汇编终止 2.显示所有ASCII的源程序:

program segment ;定义段;段名“program”可任意取 assume cs:program ;把上面定义段的段基址放入 CS mov cx,100h ;装入循环次数

mov dl,0 ;装入第一个ASCII码,随后每次循环装入新码 next: mov ah,2 int 21h

10


8086指令系统汇编实训实例(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中建一局公司重要管理文件试题库

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: