zoukankan      html  css  js  c++  java
  • 王爽 汇编语言 实验七

    ;王爽汇编语言实验七
    assume cs:code,ds:data,es:table

    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'
    ;以上是表示21年的字符串 4 * 21 = 84

    dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
    dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
    ;以上是表示21年公司总收入的dword型数据 4 * 21 = 84

    dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
    dw 11542,14430,15257,17800
    ;以上是表示21年公司雇员人数的21个word型数据 2 * 21 = 42
    data ends

    table segment
    db 21 dup ('year summ ne ?? ') ; 'year summ ne ?? ' 刚好16个字节
    table ends

    code segment
    start:
    ;data数据 放在ds
    mov ax,data
    mov ds,ax
    ;table数据 放在 es
    mov ax,table
    mov es,ax
    ;三个寄存器初始化
    mov bx,0 ;data中数据定位(和idata结合,用于年份和收入)
    mov si,0 ;table中定位(和idata给合用于定位存放数据的相对位置)
    mov di,0 ;data中用于得到员工数
    ;
    cx循环次数
    mov cx,21
    ;循环内容
    s:
    ;
    ;将年从data 到 table 分为高16位和低16位
    mov ax,[bx]
    mov es:[si],ax
    mov ax,[bx+2]
    mov es:[si+2],ax

    ;空格
    ;table 增加空格
    mov byte ptr es:[si+4],20h

    ;收入
    ;将收入从data 到 table 分为高16位和低16位
    mov ax,[bx+84]
    mov es:[si+5],ax
    mov ax,[bx+86]
    mov es:[si+7],ax

    ;空格
    ;table 增加空格
    mov byte ptr es:[si+ 9],20h

    ;雇员数
    ;将雇员数从data 到 table
    mov ax,[di + 168]
    mov es:[si + 10],ax

    ;空格
    ;table 增加空格
    mov byte ptr es:[si+12],20h

    ;计算工资
    ;取ds处工资,32位
    mov ax,[bx + 84]
    mov dx,[bx + 86]
    ;计算人均收入
    div word ptr ds:[di + 168]
    ;将结果存入table处
    mov es:[si+13],ax

    ;空格
    ;table 增加空格
    mov byte ptr es:[si + 0fh],20h

    ;改变三个寄存器值
    add si,16
    add di,2
    add bx,4

    loop s

    mov ax,4ch
    int 21h
    code ends
    end start



    转自:http://hi.baidu.com/pingchengdafei/blog/item/f9c04d7bf8337cff0ad187f9.html

    作者:BuildNewApp
    出处:http://syxchina.cnblogs.comBuildNewApp.com
    本文版权归作者、博客园和百度空间共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则作者会诅咒你的。
    如果您阅读了我的文章并觉得有价值请点击此处,谢谢您的肯定1。
  • 相关阅读:
    输出函数
    curl
    页眉的章名和章名不统一
    水平柱状图
    目录和正文的页码生成
    protobuf的使用
    yarn vue安装
    nvm node的安装
    win安装postman
    机器码
  • 原文地址:https://www.cnblogs.com/syxchina/p/2197331.html
Copyright © 2011-2022 走看看