微型计算机把二进制转换成,微机课设求助 BCD码转换为二进制

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

这是我自己找的代码,一直有错,不知道怎么改

DATA SEGMENT

BUFF1 DB "Please enter BCD code:$"

BUFF2 DB 50

DB ?

DB 50 DUP(0)

BUFF3 DB 50

DB ?

DB 50 DUP(0)

DATA ENDS

SSTACK SEGMENT STACK

DW 64 DUP(?)

SSTACK ENDS

CODE SEGMENT

ASSUME CS:CODE

START: MOV AX,DATA

MOV DS,AX

MOV DX,OFFSET BUFF1

MOV AH,9H

INT 21H

XOR AX, AX ;1、将AX清零;

; 2、将CF标志位也清零。

;也就是说相当于以下两条指令:

; MOV ax,0

; CLC

MOV CX, 0004H ;输入数据长度。[4000]:01,02..?

MOV SI, 3500H

MOV DI, 3510H

MOV DX,OFFSET BUFF2

MOV AH,0AH

INT 21H

LEA SI,BUFF2

A1: MOV AL, [SI]

ADD AL, AL ;*2

MOV BL, AL

ADD AL, AL ;*2

ADD AL, AL ;*2

ADD AL, BL ;*10

INC SI

ADD AL, [SI] ;BCD 个位,十位相加

MOV [DI], AL ;存结果

INC SI

INC DI

LOOP A1 ;cx不为零继续

MOV DX,OFFSET BUFF3

MOV AH,0AH

INT 21H

MOV AH,4CH

INT 21H ;程序终止

CODE ENDS

END START

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值