一、实验内容
1. 综合使用 loop,[bx],编写完整汇编程序,实现向内存 b800:07b8 开始的连续 16 个字单元重复填充字数据 0403H。
assume cs:code code segment mov ax,b800h mov ds,ax mov cx,16 mov bx,07b8H mov ax,0403h s:mov [bx],al inc bx mov [bx],ah inc bx loop s mov ax,4c00h int 21h code ends end
输入源代码,进行编译、连接、运行
得到运行结果:
2. 综合使用 loop,[bx],编写完整汇编源程序,实现向内存 0:200~0:23F 依次传送数据0~63(3FH)。
(1)必做:综合使用 loop, [bx], mov 实现
(2)选做*:利用栈的特性,综合使用 loop,push 实现(限定仅使用 8086 中已学过 指令实现)
(1)输入源代码:
assume cs:code code segment mov ax,20h mov ds,ax mov cx,64 s:mov [bx],bx inc bx loop s mov ax,4c00h int 21h code ends end
运行结果:
3. 教材实验 4(3)(P121)
将“mov ax,4c00h”之前的指令复制到内存0:200处
输入源代码
assume cs:code code segment mov ax,cs mov ds,ax mov ax,0020h mov es,ax mov bx,0 mov cx,16h
S:mov al,[bx] mov es:[bx],al inc bx loop s mov ax,4c00h int 21h code ends end
执行r命令,u命令,用d命令 查看0:200之后的若干字节
(感觉做的怪怪的... )
总结:
本次实验涵盖了loop、[bx]的使用,以及熟悉了t、u、d、r等指令。