zoukankan      html  css  js  c++  java
  • 汇编语言作业(五)

    班级:  计算机14-1   姓名: 许恺  学号: 2014011329 日期: 2016.4.22          

    一、编写程序

    1.设有数组X、Y和Z,各有10个元素,计算:

    Z0=X0-Y0   Z1=X1-Y1  Z2=X2-Y2   Z3=X3+Y3   Z4=X4-Y4  

    Z5=X5-Y5   Z6=X6-Y6   Z7=X7+Y7  Z8=X8-Y8   Z9=X9-Y9

    要求:X、Y两个数组的数均为两位十进制数,直接放在数据段中,无需从键盘输入,且两数相加或相减之后是一位或两位数(有可能是负数)

    输出:以十进制形式输出计算后的结果(即:数组z的内容)

    提示:对于负数的显示,在判断该数是负数后,可先输出一个负号,然后对该数求补,再输出相应的正数,例如,-15,先输出一个负号,求补后,该数变成了15,直接输出就可以了。

    1)程序清单:

    data segment

     x dw 10h,11h,12h,13h,14h,15h,16h,17h,18h,19h

     y dw 11h,12h,13h,14h,15h,16h,17h,18h,18h,20h

     z dw 10 dup(?)

     logic_ruler dw 0010001000b

    data ends

    code segment

      assume cs:code,ds:data

       main proc far

    start:

       mov ax,data

       mov ds,ax

       mov dx,logic_ruler

       mov cx,10

       mov bx,0

    l1:mov ax,x[bx]

       shr dx,1

       jc l2

       add ax,y[bx]

       jmp l3

    l2:sub ax,y[bx]

       cmp ax,0

       jge l3

       neg ax

       push dx

       mov dh,al

       mov dl,'-'

       mov ah,02h

       int 21h

       mov al,dh

       mov ah,0

       pop dx

    l3:mov z[bx],ax

       push dx

       push bx

       MOV BH,Al

       MOV BL,0AH

       DIV BL

       ADD AH,30H

       ADD AL,30H

       MOV BX,AX

       MOV DL,BL

       MOV AH,02H

       INT 21H

       MOV DL,BH

       MOV AH,02H

       INT 21H

       mov dl,' '

       mov ah,02h

       int 21h

       pop bx

       pop dx

       add bx,2

       loop l1

       mov ah,4ch

       int 21h

       main endp

    code ends

    end start

    2)运行结果(截图):

     

    二、编程体会

        真的是难,本以为书上有现成的例题就不着急写,最后才发现那么不一样,浪费好长时间又去修改程序以及优化程序,最终还是做出来了,开始感觉根本做不出来,最后还是做出来了,也许编程的魅力就在于此吧,本以为绝对做不到的事情,却做出来了,太有成就感。

  • 相关阅读:
    tomcat与resin的比较
    Linux Resin 安装配置
    [BZOJ3456]城市规划
    ZJOI 2017 仙人掌
    「LibreOJ NOI Round #1」动态几何问题
    [SDOI2015]约数个数和
    codeforce 940F
    codeforce 940F
    codeforce 940E
    [NOI2009]植物大战僵尸
  • 原文地址:https://www.cnblogs.com/xukaiae86/p/6439549.html
Copyright © 2011-2022 走看看