实验 4 [bx]和 loop 的使用

一、实验内容

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等指令。

 

posted @ 2018-11-19 22:33  idddddddd  阅读(132)  评论(0编辑  收藏  举报