实验四 [bx]和 loop 的使用

一:

1. 综合使用 loop,[bx],编写完整汇编程序,实现向内存 b800:07b8 开始的连续 16 个 字单元重复填充字数据 0403H。

代码如下:

assume cs:code
code segment
    mov ax,0b800h
    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)。

 代码如下:

assume cs:code
code segment
        mov ax,20h
        mov ds,ax
        mov bx,0
        mov cx,64
s:  mov [bx],bx
        inc bx
        loop s
        mov ax,4c00h
        int 21h
code ends
end

运行结果如下:

3.下面的程序的功能是将“mov ax,4c00h”之前的指令复制到内存 0:200处。补全程序。上机调试,跟踪运行结果。

assume cs:code
code segment
        mov ax,code
        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

运行结果如下:

(t命令)

(g命令执行)

 二:总结体会

通过这次实验我了解了寄存器间寻址方式【bx】;

理解了编程语言中循环的本质

原文地址:https://www.cnblogs.com/zakon/p/9967243.html