美文网首页
汇编语言8 数据处理:不同寻址方式在结构化数据访问中的应用

汇编语言8 数据处理:不同寻址方式在结构化数据访问中的应用

作者: 官总哦 | 来源:发表于2019-04-22 13:22 被阅读0次

程序说明:编写程序将data段的数据按照以下格式保存在table段中

122.png

实验代码如下:

assume cs:code,ds:data,ss:stack

data segment
    db '1975','1976','1977','1978','1979','1980','1981','1982','1983'
    db '1984','1985','1986','1987','1988','1989','1990','1991','1992'
    db '1993','1994','1995'

    dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
    dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000

    dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
    dw 11542,14430,15257,17800
data ends

stack segment
    dw 0,0,0,0,0,0,0,0
stack ends

table segment
    db 21 dup ('year summ ne ?? ')
table ends

code segment
start:  mov ax,data
        mov ds,ax
        mov ax,stack
        mov ss,ax
        mov sp,10H
        mov ax,table
        mov es,ax

        mov bx,0 ;数据段第一、二段数组下标
        mov si,0 ;数据段第三段数组下标
        mov bp,0 ;table段行标
        mov cx,21
S:      push cx
        mov di,0 ;table段成员内引用下标
        mov cx,4

S1:     mov al,ds:0[bx]
        mov es:[bp].0[di],al
        mov al,ds:84[bx]
        mov es:[bp].5[di],al
        inc bx
        inc di
        loop S1

        mov cx,2
        mov di,0
S2:     mov al,ds:168[si]
        mov es:[bp].10[di],al
        inc si
        inc di
        loop S2

        mov dx,es:7[bp]
        mov ax,es:5[bp]
        div word ptr es:10[bp]
        mov es:13[bp],ax

        add bp,10H
        pop cx
        loop S

        mov ax,4c00H
        int 21H
    
code ends
end start

在DOS的debug模式下,程序执行完毕后table段的值:


结果.PNG

相关文章

网友评论

      本文标题:汇编语言8 数据处理:不同寻址方式在结构化数据访问中的应用

      本文链接:https://www.haomeiwen.com/subject/pujygqtx.html