汇编措辞调用C措辞求平均数

《汇编语言程序设计》

实 验 报 告

系 别 信息与科学技术学院

专 业 软件工程

年 级

学 号

姓 名

西南交通大学信息科学与技术学院

2012年 6月

汇编语言对C语言函数调用的方法求平均数

实验目的

创建一个新的汇编语言源程序。

创建一个工程文件,对该工程文件进行编译,连接,并运行。

写出各个模块的说明

分别编写相应符合要求的C语言程序和汇编语言程序

绘制时限要求的汇编语言流程图

实验环境

硬件环境

80386或以上系列PC机

(2)内存不少于16M

2.软件环境

(1)Dos+Win31 或Windows 95或以上版本操作系统

三. 实验步骤

1.建立新的程序源文件,一个为LAST.C的C程序文件,并且最后通过Turboc编译成为.obj文件,同时编写汇编语言程序ZUIHOU1.ASM,ZUIHOU2.ASM建立工程文件ZUIHOU3.MAK,并且将五个文件链接以及编译。

2.编写实验代码以及模块说明:

LAST.C程序源代码:

#include

#include ;C语言库函数文件

extern void Input(void);

;用extern声明,这是C语言对汇编语言的Input函数的调用,对整数的输入

extern void Display(char *sting,int length);

;用extern声明,这是C语言对汇编语言Display函数的调用,显示最终的平均数

void Bverage (void);

;汇编语言对C语言的调用,Bverage函数的功能是求所有输入的数字的平均数

int Total=0; ;全局变量,用于计算存储所有数字的和

int in=0; ;全局变量,用于存储输入的总数字的个数

double average; ;全局变量,用于参数传递,存储计算的平均数

int main(void) ;C中的主函数

{

char *string=0; ;字符串用于存储平均数转化的字符串

int length; ;字符串的长度

printf("How many numbers:\n");

scanf("%d",&in);

Input(); ;调用Input()函数进行每一个数字的输入

string=gcvt(average,10,string); ;库函数将平均数转化成字符串存在以string开始的内存空间中

length=strlen(string); ;求字符串的长度

Display(string,length); ;对字符串的显示函数

return 1;

}

void Bverage(void) ;汇编语言调用的求平均数的函数

{

double average;

Total=(double)Total;

average=Total/in;

}

ZUIHOU1.ASM

extrn _Bverage:far ;求平均数的函数的属性far,采用汇编语言对C的调用

extrn _in:word,_Total:word ;全局变量in存放输入的总数字的个数,Total存放所有的数字的和

.model small

.code

public _Input ;Input函数调用

_Input proc

push bp

mov bp,sp ;对bp寄存器压入堆栈

xor ax,ax

xor cx,cx

mov cx,_in ;将数字的总的个数存放在CX寄存器中,用在循环

lop:

xor ax,ax

mov ah,01h ;调用02h系统中断,输入字符串

int 21h

sub al,30h ;将字符串转换成响应的ASCII码

add ax,_Total

mov _Total,ax

采用汇编语言对c语言函数调用的方法求平均数 汇编实验报告,汇编措辞调用C措辞求平均数.doc...相关推荐

  1. 采用汇编语言对c语言函数调用的方法求平均数 汇编实验报告,汇编语言调用c语言完成求平均值.docx...

    汇编语言调用c语言完成求平均值.docx <汇编语言程序设计>实验报告系别专业年级学号姓名2012年6月实验七汇编语言对C语言函数调用求平均值一.实验目的本实验主要达到以下目的:1.完成汇 ...

  2. 哈工大 c语言测试与系统控制 ad,哈工大——c语言在测量与控制中应用实验报告.pdf...

    哈工大--c语言在测量与控制中应用实验报告 Harbin Institute of Technology Harbin Institute of Technology C 语言在测量与控制中的 C 语 ...

  3. 五猴分桃c语言课程设计,c语言程序设计五猴分桃问题实验报告.doc

    c语言程序设计五猴分桃问题实验报告.doc 课程设计报告学院.系:吉林大学珠海学院计算机科学与技术系专业名称:软件工程课程设计科目C语言程序课程设计所在班级:10班学生学号:04121010学生姓名: ...

  4. c语言五猴分桃案例分析,C语言程序设计五猴分桃问题实验报告.doc

    C语言程序设计五猴分桃问题实验报告 课 程 设 计 报 告 学院.系:吉林大学珠海学院计算机科学与技术系专业名称:软件工程课程设计科目C语言程序课程设计所在班级:10班学生学号:学生姓名:赵学文指导教 ...

  5. 网络协议命令行处理c语言程序解析,网络协议工程SPIN实验报告剖析.doc

    网络协议工程SPIN实验报告剖析 网络协议工程SPIN实验报告 摘 要:本文主要介绍了一种基于模型检测的协议自动分析工具SPIN的使用.对经典的AB协议在理想状态.信道有误码无丢失和信道有误码有丢失三 ...

  6. 汇编语言——《子程序应用(数制转换)程序设计》实验报告

    实验目的 掌握程序设计中的子程序结构: 熟练使用过程伪指令.子程序调用和返回等汇编语言的指令编写子程序: 掌握数制转换方法: 掌握利用DOS系统功能调用进行字符输入及字符输出(显示)的方法. 实验内容 ...

  7. DFA的构造C语言,DFA的编程实现含源代码实验报告剖析

    <DFA的编程实现含源代码实验报告剖析>由会员分享,可在线阅读,更多相关<DFA的编程实现含源代码实验报告剖析(20页珍藏版)>请在人人文库网上搜索. 1.实验一(一)程序设计 ...

  8. 试验统计计算机的使用方法,统计软件应用实验报告.doc

    统计软件应用实验报告 实践报告书写要求 实践报告原则上要求学生手写,要求书写工整.若因课程特点需打印的,要遵照以下字体.字号.间距等的具体要求.纸张一律采用A4的纸张. 实践报告书写说明 实践报告中一 ...

  9. 现代密码学上机程序c语言,现代密码学与加解密技术实验报告

    现代密码学与加解密技术实验报告 现代密码学与加解密技术实验 一. 实验教学目标与基本要求 现代密码学与加解密技术实验是本课程重要的实践教学环节.实验的目的 不仅仅是验证理论知识,更重要的是通过实验加强 ...

  10. c语言链表做歌手比赛系统,大型实验报告(歌手比赛系统)

    <大型实验报告(歌手比赛系统)>由会员分享,可在线阅读,更多相关<大型实验报告(歌手比赛系统)(5页珍藏版)>请在人人文库网上搜索. 1.呀歩垂不主邂目蜃轨运(Z)SIO乙/讥 ...

最新文章

  1. 【Kali渗透全方位实战】子域名的概念与探测(DNSenum工具和Sublist3r脚本的使用)
  2. 松果出行CTO朱蓝天做客《智慧Talk》,解开共享电单车产研密码
  3. Maven settings.xml配置Nexus
  4. 分布式和微服务的区别
  5. 元素上下层叠关系总结
  6. 传统到敏捷的转型中,谁更适合做Scrum Master?
  7. js便签笔记(3)——切记:appendChild()、insertBefore()是移动element节点!
  8. C# 中关闭当前线程的四种方式 .
  9. 算法与数据结构——有序表(Java)(b站左程云课程笔记总结)
  10. Windows makecert生成代码签名证书
  11. 2008年中国富豪榜今日发布,以下为富豪榜201-300名
  12. JK latch JK触发器 【数字电路】
  13. 软件测试2小时入门-曹红杏-专题视频课程
  14. 由“三姬分金”到“海盗分金”
  15. 电子计算机的基本结构基于存储程序,计算机有答案
  16. 在MySQL内部存储代码
  17. 阿里云实战之一(必备程序安装)
  18. 微信内网页安卓点击图片放大与IOS点击失效处理方法
  19. C语言编写仓库管理系统
  20. matlab典型相关函数,典型相关分析(Matlab实现函数)

热门文章

  1. Java 动手写爬虫: 三、爬取队列
  2. Learning-Based Approximation of Interconnect Delay and Slew in Signoff Timing Tools
  3. OSPF——LSA讲解
  4. 鸡先还是蛋先,当然有答案
  5. 世界地图各大洲鼠标移入切换显示
  6. 通过思科模拟器配置思科2960交换机的办法:
  7. win+L 锁屏快捷键 失效
  8. 你真的理解了MVC, MVP, MVVM吗?
  9. matlab计算轮廓曲率半径,【转】求最小曲率半径matlab源程序
  10. 解决安装虚拟机vmware无法打开注册表项的问题