本人有道汇编实验题不会做,跪求求高手解答下,不甚感激~(下面是我复制的原题)

实验六 子程序设计(综合设计)

实验名称:子程序设计
实验目的:掌握汇编语言设计子程序的方法,掌握参数传递的方法。
实验内容:编写程序实现两个6 字节数相加。
data1=060504030201H
data2=90876A7DBC45H
要求将两个单字节相加的程序段设计为子程序。主程序分6 次调用该子程序。最后将计算的结果输出到屏
幕上。因此还需要编写一个子程序实现16 进制到ASCII 码的转换。
提示:
① 6 个字节的数据在内存中存放时,也是遵守低字节在低地址,高字节在高地址的原则。所以定
义数据段时,可以把data1 和data2 分别定义为字节型变量,各包含6 个字节(从低到高)。再
定义一个变量比如sum 存放结果。
② 对于结果sum 需要输出到屏幕上,sum 中的数据是16 进制数,而屏幕上能显示的都是ASCII
字符,所以必须将16 进制数转换成对应的ASCII 码(注意:实验八的内容之一就是十六进制
到ASCII 码的转换)。然后再调用相应的DOS 功能调用,把结果对应的字符串进行显示,显示
时注意字符的顺序。
本实验没有参考程序,请大家自己独立完成,作为汇编部分综合实验的考核,满分为10 分。
要求附源程序、流程图和运行结果。

第1个回答  2010-12-10
无聊写了个代码,最后答案是C

#include <stdio.h>
void main()
{
int sum=0;
for(int i='A';i<='D';i++)
{
sum=0;
if(i!='A') sum++;//A
if(i=='C') sum++;//B
if(i=='D') sum++;//C
if(i!='D') sum++;//D
if(sum==3)
printf("做好事的是%c\n",i);
}

}
相似回答
大家正在搜