【微机原理 实验】 二进制加、减法编程实验 (含汇编代码)

实验一  二进制加、减法编程实验

 

更多微机实验:https://blog.youkuaiyun.com/yxp189/column/info/39992 

                         汇编语言-微机原理与接口技术-实验

注意未经允许,请勿转载!

           转载请标明出处~

适用课程:微机原理与接口技术(实验)

选用教材:微型计算机原理与接口技术-中国科学技术大学出版社

 

一、实验要求和目的   

       1.熟悉汇编语言二进制多字节加法基本指令的使用方法;

       2.熟悉汇编语言二进制多字节减法基本指令的使用方法;

       3.掌握汇编语言编程的一般结构。

二、实验内容

    (1)编写程序,实现长度为2字的两个数相加。 

    (2)编写程序,实现一个长度为2字的数和一个长度为1字的数相减。

 

实验代码:

①实验内容(1)

     长度为2字的两个数相加。

;author:YXP
;优快云:yxp189
;e-mail:yxp189@protonmail.com
;如有问题,欢迎和我联系~
;转载请标明出处~

STACKS  SEGMENT   STACK    
              DW        128 DUP(?)  
      STACKS  ENDS
       DATAS  SEGMENT              
        NUM1  DW        2  DUP(0)
        NUM2  DW        2  DUP(0)
         SUM  DW        3  DUP(0)
       DATAS  ENDS
       CODES  SEGMENT              
              ASSUME    CS:CODES,DS:DATAS
      START:  MOV       AX,DATAS    
              MOV       DS,AX

              MOV       AX,0201H
              MOV       [NUM1],AX
              MOV       AX,0304H
              MOV       [NUM1+2],AX
              
              MOV       AX,0FF01H
              MOV       [NUM2],AX
              MOV       AX,0FFFFH
              MOV       [NUM2+2],AX
              
              MOV       AX,[NUM1]
              ADC       AX,[NUM2]
              MOV       [SUM],AX
              
              MOV       AX,[NUM1+2]
              ADC       AX,[NUM2+2]
              MOV       [SUM+2],AX

              MOV       AX,0
              ADC       AX,0
              MOV       [SUM+4],AX
              
              MOV       AX,4C00H    
              INT       21H
       CODES  ENDS
              END       START

①实验内容(2)

     一个长度为2字的数和一个长度为1字的数相减。

;author:YXP
;优快云:yxp189
;e-mail:yxp189@protonmail.com
;如有问题,欢迎和我联系~
;转载请标明出处~

STACKS  SEGMENT   STACK  
              DW        128 DUP(?)  
      STACKS  ENDS
       DATAS  SEGMENT            
        NUM1  DW        2  DUP(0)
        NUM2  DW        1  DUP(0)
         SUM  DW        2  DUP(0)
       DATAS  ENDS
       CODES  SEGMENT  
              ASSUME    CS:CODES,DS:DATAS
      START:  MOV      AX,DATAS
              MOV       DS,AX

              MOV      AX,0000H
              MOV     [NUM1],AX
              MOV     AX,0304H
              MOV   [NUM1+2],AX
              
              MOV       AX,5F01H
              MOV     [NUM2],AX
              
              MOV     AX,[NUM1]
              SBB       AX,[NUM2]
              MOV       [SUM],AX
              
              MOV   AX,[NUM1+2]
              SBB       AX,0
              MOV    [SUM+2],AX
              
              MOV      AX,4C00H  
              INT       21H
       CODES  ENDS
              END       START

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值