ZKX's LAB

累加加法汇编程序原理 汇编语言怎么写1到100的累加和

2021-04-27知识3

汇编语言怎么写1到100的累加和 DSEG DSEG SEGMENT RESULT DW?存放和 DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG START:MOV AX,DSEG MOV DS,AX MOV AX,1;从1开始加 MOV RESULT,0;。

汇编多字节十进制加法 data1 segments db 10,?11 dup('$')s1 db 1,10,100s2 db 0Dh,0Ah,'$'s3 db 'error','$'ddec dw 10000,1000,100,10,1dsc db 0,0,0,0,0dh,0ah,'$'data1 endscode segmentassume cs:code,ds:data1start:mov ax,data1mov ds,axcall lpcall mdmov cx,5;把累加的结果以十进制输出lea si,ddeclea di,dscconv:mov bl,0rrr:sub ax,[si]jc nextinc bljmp rrrnext:add ax,[si]or bl,30hmov[di],blinc siinc siinc diloop convlea dx,s2mov ah,09hint 21lea dx,dscmov ah,9hint 21hdm1:mov ah,4chint 21hlp:lea dx,s;把输入的数据转换成二进制存取在DX中mov ah,0ahint 21hmov dx,0;保存数据的结果mov bx,0lea si,slop:cmp byte ptr[si+2],0Dhjz lop1inc bx;BX计数输入的长度inc sijmp loplop1:mov cx,bxinc bxmov si,bxmov ax,0lea di,s1lop2:mov al,[si]sub al,30hmul byte ptr[di]inc diadd dx,axdec siloop lop2retmd:mov ax,0;求累加和存放在ax中cmp dx,100jbe lop3jmp errlop3:add ax,dxdec dxjz exitjmp lop3exit:reterr:lea dx,s3mov ah,09hint 21hjmp dm1code endsend start不懂的再来问 展开

急求用汇编语言实现1至100的累加运算?那1到1000的加法运算又如何修改程序呢?

#累加加法汇编程序原理

随机阅读

qrcode
访问手机版