導航:首頁 > 源碼編譯 > 編譯完成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進制加法相關的資料

熱點內容
android序列化文件 瀏覽:249
java泛型for 瀏覽:29
html保存pdf 瀏覽:211
單片機畢業論文摘要 瀏覽:666
安卓機如何關閉閃付 瀏覽:518
pdf標注app 瀏覽:484
編譯原理的前端和後端的意義 瀏覽:395
德陽程序員招聘 瀏覽:801
javaascii轉中文 瀏覽:889
酷狗app在哪裡點自己唱 瀏覽:202
ios15輕量版app怎麼刪除 瀏覽:564
dos下載命令行 瀏覽:748
蘋果文件加密後打不開 瀏覽:279
單片機握手失敗 瀏覽:394
中國聯通app怎麼查每月實時話費 瀏覽:463
linuxatlas 瀏覽:483
webcamandroid 瀏覽:71
友友車友軟體免加密 瀏覽:97
java多進程編程 瀏覽:904
12864液晶與單片機的連接 瀏覽:28