zoukankan      html  css  js  c++  java
  • 【汇编程序】循环程序设计方法 求A和B两个4字节BCD数之和 他们在内存中以压缩BCD码形式存放

    ;循环程序设计方法 求A和B两个4字节BCD数之和 他们在内存中以压缩BCD码形式存放
    ;低字节在前  高字节在后  要求结果以同样形式存放以SUM的单元中
    data segment 
        a db 44h,33h,22h,11h ;数A  BCD数 加上后缀H
        b db 88h,77h,66h,55h ;数B 格式同上
        sum db 5 dup(?)      ;存和(包含进位)
    data ends
    
    stack segment 'stack'
        stapn db 100 dup(?)
        top equ length stapn
    stack ends
    
    code segment 
     min proc far
         assume cs:code,ds:data,es:data,ss:stack;使用串操作指令要设置附加段
       start:mov ax,stack
             mov ss,ax
             mov sp,top
             push ds
             sub ax,ax
             mov ds,ax ;设置数据段
             mov es,ax ;设置附加段  与数据段相同
             mov si,offset a  ;si<数A的偏移地址
             mov bx,offset b  ;bx<数B的偏移地址
             mov di,offset sum ;di 
             mov cx,length sum ;cx 和的长度(含进位位) 为5
             dec cx ;循环次数为4 
             cld ;串操作做清方向标志 地址增量
             clc ;进位位清0
             mov ah,0 ;ah存最后一次进位 初值置0
             
        get_sum:lods a ;al 从a取一个字节 si自动增1
            adc al,[bx] ;与数B 相加 结果al
            daa ;
            inc bx 
            stos sum
            loop get_sum
            adc ah,0
            mov al,ah
            stosb 
            ret 
        main endp
        code ends
             end main
  • 相关阅读:
    w3c标准
    HTML+CSS理解
    Mybatis源码日记(一)
    Sqlmap学习笔记(三)
    EasyExcel读取跨行单元格数据为空的解决办法
    Sqlmap学习笔记(二)
    Sqlmap学习笔记(一)
    Linux安装运行Typora
    Kafka环境搭建
    Mysql主从配置
  • 原文地址:https://www.cnblogs.com/qxlxi/p/12860876.html
Copyright © 2011-2022 走看看