組合語言實現SRC處節無符號數累加 結果不超過位元組 ,和送到DEN

2022-08-01 10:21:37 字數 3443 閱讀 6943

1樓:匿名使用者

code  segment

assume cs:code

org 100h

start:

push cs

pop ds

mov ax,a

mov bx,b

add ax,bx

mov a,ax

call dispax

mov ah,4ch

int 21h

a     dw 32767

b     dw 32769

dispax      proc near

; 以10進位制數形式顯示無符號字的值,要顯示的值事先存 ax 中

push bx

push cx                 ;儲存bx、cx、dx、si

push dx

push si

mov byte ptr nz,0       ; 狀態,看是否已輸出過非 0

push ax

lea si,divarr

mov cx,5

disp1:

pop ax

mov dx,0

mov bx,[si]

div bx

push dx

cmp al,0

jne disp2               ; 當 al不為0時輸出

cmp byte ptr nz,1       ; 當al 為0時,再比較nz 是否為 1

je disp2                ; 等於1 表示前面已輸出過非 0 應將 0 輸出

cmp cx,1                ; 當最後一位仍 為0 時 輸出 0 而非空格

je disp2

mov dl,20h

jmp disp3

disp2:

add al,30h

mov dl,al

mov byte ptr nz,1

disp3:

mov ah,2

int 21h

inc si

inc si

loop disp1

pop dx

pop si                  ; 恢復bx、cx、dx、si

pop dx

pop cx

pop bx

retdivarr   dw 10000,1000,100,10,1

nz    db 0

dispax      endp

code  ends

end start

51微控制器彙編程式,將存放在內部ram起始地址為30h和40h的兩個3位元組無符號數相加... 5

2樓:匿名使用者

;啟動入口

org 0000h ;復位啟動

ljmp start ;

org 0100h ;

;;主控程式

start: mov a,30h

add a,40h

mov 70h,a

mov a,31h

addc a,41h

mov 71h,a

mov a,32h

addc a,42h

mov 72h,a

addc a,#0

mov 73h,a

jmp $

end ;

組合語言求無符號位元組序列中的最大值和最小值

3樓:匿名使用者

datas segment

s db '1234567890'

s1 db 'max: '

max db 0,'$'

s2 db 'min: '

min db 0,'$'

datas ends

codes segment

assume cs:codes,ds:datas

start:

mov ax,datas

mov ds,ax

mov si,offset s ;初始化si,cx

mov cx,9 ;cx為定義的個數減一

mov bh,[si] ;第一個字元放入bh,bl

mov bl,bh

ss1: ;開始比較

inc si

mov al,[si]

cmp al,bh

jb ss2

mov bh,al ;al>bh 寫入bh

jmp ss3

ss2:

cmp al,bl

ja ss3

mov bl,al ;al

ss3:

loop ss1

mov max,bh ;寫入最大值

mov min,bl ;寫入最小值

mov dx,offset s1 ;顯示最大值

mov ah,9

int 21h

mov dl,' ' ;顯示空格

mov ah,2

int 21h

mov dx,offset s2 ;顯示最小值

mov ah,9

int 21h

mov ah,0 ;等待鍵盤輸入

int 16h

mov ah,4ch

int 21h

codes ends

end start

51微控制器組合語言程式設計 兩個10位元組的無符號數的相加

4樓:匿名使用者

mov r0,#40h

mov r1,#60h

mov r2,#0ah

clr c

loop1:

mov a,@r0

addc a,@r1

mov @r1,a

inc r0

inc r1

djnz r2,loop1end

5樓:做而論道

樓上的程式,少了個@.

mov r0, #40h

mov r1, #60h

mov r2, #0ah

clr c

loop1:

mov a, @r0

addc a, @r1

mov @r1, a ;這裡少了個@.

inc r0

inc r1

djnz r2, loop1end

arm組合語言實現下列c語言語句

gnu彙編語法 a word 1 b word 2 c word 3 x word y word prog ldr r0,a ldr r1,r0 ldr r0,b ldr r2,r0 ldr r0,c ldr r3,r0 cmp r1,r2 bge true sub r1,r1,r3 mul r1,...

組合語言動態從鍵盤輸入兩位無符號數,找出其中最大數

本程式通過編譯來,運源行正確。code segment assume cs code,ds codekbesc equ 1bh promptstr db please input a letter esc to exit start push cs pop ds 使資料段與 段同段 begin le...

用arm組合語言實現下列c語言語句 ifab

keil 編譯完能直接看到彙編 的啊,幹嘛要自己翻譯 int main int argc,char argv memset ifr i arm組合語言實現下列c語言語句 if a b x a b 8 else y a c b 20 gnu彙編語法 a word 1 b word 2 c word 3...