汇编语言:两数求和
来源:互联网 发布:软件流程图实例 编辑:程序博客网 时间:2024/05/23 01:03
buff1 db 20
n1 db ?
content1 db 20 dup(0)
buff2 db 20
n2 db ?
content2 db 20 dup(0)
buff3 db 21 dup(0)
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
buffa:
mov dx,offset buff1
mov ah,0ah
int 21h
mov dl,0ah
mov ah,2
int 21h
buffb:
mov dx,offset buff2
mov ah,0ah
int 21h
mov cl,n1
mov si,offset content1
transfer1:
sub byte ptr[si],30h
inc si
loop transfer1
dec si
mov di,si
mov cl,n2
mov si,offset content2
transfer2:
sub byte ptr[si],30h
inc si
loop transfer2
dec si
mov bx,si
addd:
mov si,offset buff3
mov dl,n1
cmp dl,n2
clc
jg lowern2
mov cl,n1
mov dl,n2
addln1:
mov al,[di]
adc al,[bx]
aaa
mov [si],al
inc si
dec di
dec bx
loop addln1
pushf
mov cl,n2
sub cl,n1
cmp cl,0
je ifequ
popf
remain0n1:
mov al,0
adc al,[bx]
aaa
mov [si],al
inc si
dec bx
loop remain0n1
jmp done
lowern2:
mov cl,n2
mov dl,n1
addln2:
mov al,[di]
adc al,[bx]
aaa
mov [si],al
inc si
dec di
dec bx
loop addln2
pushf
mov cl,n1
sub cl,n2
popf
remain0n2:
mov al,0
adc al,[di]
aaa
mov [si],al
inc si
dec di
loop remain0n2
done:
jnc over
jmp refinement
ifequ:
popf
jnc over
refinement:
mov al,0
adc al,0
mov [si],al
inc dl
inc si
over:
dec si
mov cl,dl
mov dl,0ah
mov ah,2
int 21h
transfer3:
add byte ptr[si],30h
mov dl,[si]
mov ah,2
int 21h
dec si
loop transfer3
mov ah,4ch
int 21h
code ends
end start
- 汇编语言:两数求和
- 两数求和
- 算法#21--两数求和
- 不用加号两数求和
- 修改程序(两数求和)
- 1. Two Sum - 两数求和
- leetcode题目之两数求和
- 一个简单的两数求和程序的小小改动
- GEEK编程练习— —两数求和
- 不使用算数运算符 完成两数求和
- 2. Add Two Numbers (两数求和)
- leetcode 第15题:两数求和的扩展
- 汇编语言数组求和代码分析
- 80x86 汇编语言编程:求和
- “两两”求和问题技巧
- 两整形数各自位逆转(高地位颠倒)后相加,求和的逆转值
- 167.leetcode Two Sum II - Input array is sorted(medium)[两数求和固定值]
- 汇编语言数组求和代码分析(1)
- 取扩展名
- Template模版实例(C++)
- 指向指针的指针
- 线性表操作
- tsm 只读模式修改为读写
- 汇编语言:两数求和
- Visual Studio 2013预览版中的 C++11 新特性
- 从键盘输入两个十以内的数求和,并把和用十进制在显示器上将显示
- Html合并单元格
- C++输出金字塔
- 汇编语言第五次作业
- 约瑟夫环问题(C与C++混合版)
- Unity 3D GUI控制
- Assignment 7: Shortest Path Algorithms