2 heatdeath HeatDeath 于 2016.04.06 20:18 提问

初学者的一点疑问,汇编语言计算两个输入数字的和并输出 1C

assume cs:code,ds:data
data segment
buf1 db 20
db ?
db 20 dup(?)
buf2 db 20
db ?
db 20 dup(?)
sh1 db "please input tow numbers$"
sh2 db 0ah,0dh,"The first number is $"
sh3 db 0ah,0dh,"The second number is $"
sh4 db 0ah,0dh,"The result of them is $"
data ends
code segment
start: mov ax,data
mov ds,ax

show1: mov dx,sh1
mov ax,09h
int 21h
mov dx,sh2
int 21h

buf1: lea dx,buf1
mov ax,0ah
int 21h
buf2: lea dx,buf2
mov ax,0ah
int 21h

add1:

;====想法:将第一个数字送入buf1中,将第二个数字送入buf2中
;====比较两个数字的长度,以长度较大的数字的字节数作为循环次数,进行加法循环
;====将每次循环的结果依次压栈,在循环结束后,依次出栈,显示到屏幕上

目前我只想到了这些,但是再往下就不会写了...
还请大神多多指教


Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
汇编语言编写数组的问题和实现输入两个十进制数输出的问题
问题1:用汇编语言编写,将一个包含10个带符号数的数组分成正数数组和负数数组? 1.你的10个带符号的数据是存放在内存中还是要手工输入的(这个代码量就大多了) 2.你的10个数据是几个字节的(最简的是单字节操作) 3.分好的数据是单独存放还是存放在原位置,要不要输出 代码: double:a(i),b(i),c(i) for(i=0,i<9,i++) { if a(i) >0, b(
汇编语言:输入两个数,不大于30,有提示,比较两个数字,如果相等,计算和,如果不相等,计算平均值,并且都要以2进制的格式输出,按照升序输出,计算两个数字各占和的百分比,并且按照“%”的格式输出。
题目:输入两个数不大于30,有提示,比较两个数字,如果相等,计算和,如果不相等,计算平均值,并且都要以2进制的格式输出,按照升序输出,计算两个数字各占和的百分比,并且按照“%”的格式输出。 下面是我编写的程序,功能全部实现,并且编译运行通过。 运行结果如下: 下面是我写的源代码,希望各位指点。 data segment num1 db ? num2 db ? sum db ?
利用汇编语言编程实现在键盘上输入两个一位数,在屏幕上显示它们的积。
在键盘上输入两个一位数,在屏幕上显示它们的积。stack segment  db 200 dup(0)stack endscode segment  assume cs:code,ss:stackbegin: mov ah,1       int 21h   ;从键盘输入第一个数字al       mov bl,al       mov ah,2       mov dl,0dh       in
80x86 汇编语言:输入字符串、显示其中数字
从键盘输入一个字符串,将其中的数字字符在下一行原样显示,而其他字符则不显示。题目链接:http://zhidao.baidu.com/question/2009606805191611028.html做而论道编程如下:    (2014-05-13 17:49 提问者采纳)ASSUME  CS:CC, DS:QQQQ  SEGMENT    STR   DB   100, ?, 100  DUP(
(汇编)输入两个四位十进制数字并求和后以十进制输出
<br />用java数十行搞定的程序,用汇编要100多行。。。<br />而且还不支持异常处理,崩溃啊。。。<br />不过对于汇编基本的数据处理啥的还是有帮助的,<br />上程序,win32汇编<br />.model small .586p .data remind_msg_1 db "please input the first number",0ah,0dh,"$" number_1 db 5 ;数字字符串缓冲区1 db ? db 5 dup(?)
用汇编语言编程实现求两个数的和,并用十进制输出
用汇编语言编程实现求两个数的和,并用十进制输出
8086汇编 计算输入两个十进制数之和用16进制输出//输入两个十六进制数之和用10进制输出
把两个题目放在了一起,输入H(D)+数字+空格+数字+空格就会看到和 可以参考输入示范的截图 输入H代表你输入16进制数,以10进制输出和 输入D代表你输入10进制数,以16进制输出和 此程序可以接受加数很大只要最后和在16位寄存器放得下就行 data segment;计算两个在和在65535内的十进制数或16进制数的和,这两个数最多可以是五位十进制数 db 10 dup(0);用
汇编 从键盘输入两个有符号数字 加减乘除后输出结果
汇编 从键盘输入两个有符号数字 加减乘除后输出结果
汇编输入排序输出示例
有人问类似的问题,俺既然写出来,不妨发出来,后来的人也许就不用问了。奇怪的是,代码选项里没有汇编 data segment    number dw 10 dup ( 0 )        ;输入的数据    inputmsg db please input:$    outputmsg db after sort, 0dh, 0ah, $data endsstack 
计算并输出两个整数的最大值
#include<stdio.h> int main() { int a,b,max; printf("Input a,b:"); scanf("%d,%d",&a,&b); if(a>b) max=a; if(a<b) max=b; printf("max=%d\n",max); return 0; } 程序截图 知识点:用于但分支控制的条