导航:首页 > 源码编译 > 编译完成3字节10进制加法

编译完成3字节10进制加法

发布时间:2022-04-02 11:35:51

‘壹’ 编写一完整程序实现多字节(10个以上字节型数据)加法运算,并将加数和结果显示在计算机屏幕上。

以16进制数的形式显示还好说,若是要以10进制数的形式显示加数和结果,那是很有难度的!

‘贰’ c语言十进制加法

一般都是10进制表示的,而实际的计算是以2进制进行的,不过这是编译器的事,不用关心。如需以其他形式输出,只需要转换格式

‘叁’ 89c52 汇编语言 如何将一个3字节的大数转换为十进制并显示出来

帮你将难的部分做出来吧,显示部分你自己搞定
将三个字节赋值给R2R3R4(R2为高位),返回值在R0开始的NCNT个地址中,因此调用前需如此处理:
NCNT EQU 20H
....................
MOV R2,#L
MOV R3,#M
MOV R4,#N
MOV R0,#30H
...........
IBTD31 :
CLR A
MOV NCNT,A
IBD311 :
MOV R7,#0AH
LCALL NDIV31
MOV A,R7
MOV @R0,A
INC R0
INC NCNT
MOV A,R2
ORL A,R3
ORL A,R4
JNZ IBD311
MOV A,R0
CLR C
SUBB A,NCNT
MOV R0,A
RET
NDIV31 :
MOV A,R2
MOV B,R7
DIV AB
PUSH A
MOV R2,B
MOV B,#10H
NDV311 :
CLR C
MOV A,R4
RLC A
MOV R4,A
MOV A,R3
RLC A
MOV R3,A
MOV A,R2
RLC A
MOV R2,A
MOV F0,C
CLR C
SUBB A,R7
JB F0,NDV312
JC NDV313
NDV312 :
MOV R2,A
INC R4
NDV313 :
DJNZ B,NDV311
POP A
CLR OV
JZ NDV314
SETB OV
NDV314 :
XCH A,R2
MOV R7,A
RET

‘肆’ 单片机 单字节无符号十进制加法 程序

这是最简单的操作啊。你是要问什么问题?
加完了,用DAA就可以了。
MOV A,#34
ADD A,#12 ; 34+12
DA A ; 调整为BCD码

‘伍’ 汇编多字节十进制加法

data1 segment
s db 10,?,11 p ('$')
s1 db 1,10,100
s2 db 0Dh,0Ah,'$'
s3 db 'error','$'
ddec dw 10000,1000,100,10,1
dsc db 0,0,0,0,0dh,0ah,'$'
data1 ends
code segment
assume cs:code,ds:data1
start:mov ax,data1
mov ds,ax

call lp

call md

mov cx,5 ;把累加的结果以十进制输出
lea si,ddec
lea di,dsc

conv: mov bl,0

rrr: sub ax,[si]
jc next
inc bl
jmp rrr

next: add ax,[si]
or bl,30h
mov [di],bl
inc si
inc si
inc di
loop conv

lea dx,s2
mov ah,09h
int 21

lea dx,dsc
mov ah,9h
int 21h

dm1: mov ah,4ch
int 21h

lp: lea dx,s ;把输入的数据转换成二进制存取在DX中
mov ah,0ah
int 21h

mov dx,0 ;保存数据的结果
mov bx,0
lea si,s

lop: cmp byte ptr[si+2],0Dh
jz lop1
inc bx ;BX计数输入的长度
inc si
jmp lop

lop1: mov cx,bx
inc bx
mov si,bx
mov ax,0
lea di,s1

lop2: mov al,[si]
sub al,30h
mul byte ptr[di]
inc di
add dx,ax
dec si
loop lop2
ret

md: mov ax,0 ;求累加和存放在ax中
cmp dx,100
jbe lop3
jmp err

lop3: add ax,dx
dec dx
jz exit
jmp lop3

exit: ret

err: lea dx,s3
mov ah,09h
int 21h
jmp dm1

code ends
end start
不懂的再来问

‘陆’ 怎样把三个字节数据转化为十进制数据

常用字节为二进制的数,设数字为xyz,方法是x×10的二次方+y×10的一次方+z×10的零次方的出来的数就是是十进制的!

‘柒’ 单字节十进制bcd码加法程序,被加数在h中,加数在h中,要求和放在h中

1、压缩BCD码(一个字节存两位8421BCD码对应的十进制数)加法程序:
MOV AL,12H
MOV BL,34H
ADD AL,BL
DAA
2、非压缩BCD码(一个字节存一位8421BCD码对应的十进制数)加法程序:
MOV AL,02H
MOV BL,04H
ADD AL,BL
AAA

‘捌’ 单片机无符号十进制加法

;51单片机程序如下

CLR C
LOOP:
MOV A, @R0
ADDC A, @R1
DA A
MOV @R0, A
INC R0
INC R1
DJNZ R7, LOOP

END

‘玖’ 求!一道关于单片机10位十进制加法子程序的编程题,帮帮忙啊

;
ORG 0000H

MOV 24H, #12H
MOV 23H, #23H
MOV 22H, #34H
MOV 21H, #45H
MOV 20H, #56H ;10位十进制加数:1223344556。

MOV 29H, #33H
MOV 28H, #44H
MOV 27H, #55H
MOV 26H, #66H
MOV 25H, #77H ;10位十进制被加数:3344556677。

MOV R0, #20H
MOV R1, #25H
MOV R2, #5
CLR C
LOOP:
MOV A, @R0
ADDC A, @R1
DA A
MOV @R0, A
INC R0
INC R1
DJNZ R2, LOOP

SJMP $
END

阅读全文

与编译完成3字节10进制加法相关的资料

热点内容
12864液晶与单片机的连接 浏览:23
服务器上的bmc是什么 浏览:627
服务器怎么测量网络延迟 浏览:601
打扫卫生解压视频vlog 浏览:271
半封闭活塞制冷压缩机 浏览:397
如何删除存档的文件夹 浏览:833
基于单片机的参考文献 浏览:913
压缩空气管道安全 浏览:768
哪个英语app比较好 浏览:217
进货app怎么样 浏览:517
c语言编译软件免费吗 浏览:250
怎么把appstotre改成中文 浏览:441
html如何连接服务器 浏览:572
linux下如何创建文件 浏览:699
三洋空调压缩机参数 浏览:201
加密猫背后的故事 浏览:253
陕西不听命令 浏览:368
怎么把皮皮虾app表情弄到微信 浏览:291
安卓编译springboot 浏览:397
手机壁纸文件夹背景 浏览:793