C语言和汇编语言解析_第1页
C语言和汇编语言解析_第2页
C语言和汇编语言解析_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

什么是C语言:C语言是一门通用〕境支持便能运行的十算机编程语言,应用编程语言尽管c语言提供了:语言的设计目标是提供一种多低级处i进行编译,甚至包含一:些嵌入式处理器(单什么是C语言:C语言是一门通用〕境支持便能运行的十算机编程语言,应用编程语言尽管c语言提供了:语言的设计目标是提供一种多低级处i进行编译,甚至包含一:些嵌入式处理器(单.什么是汇编语言:IU.汇编语言(assemblylanguage)是一种用于电字计算机、微MHHHCII代替机器指令的操^码^用地址符号(nyiiiJ功能,但仍然[超级电脑等作理器、微控制器或其他可言,巒、产台

准规格写'少村称为符号语:的机:

语言:不需要任何运行环许多电脑平台上在汇编语言中,用助记符[址。在不同的设备中,汇编语言对应着不同的机器语言指令C语言和汇编语言解析程序、嵌入式操作系统和实时运行程序都需要汇编语言。asmmovbh,0;asmmovdl,20;程序、嵌入式操作系统和实时运行程序都需要汇编语言。asmmovbh,0;asmmovdl,20;集,通过汇编过程转换成机器指令。普遍地说,特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植。许多汇编程序为程序开发、汇编控制、辅助调试提供了额外的支持机制。有的汇编语言编程工具经常会提供宏,它们也被称为宏汇编器。汇编语言不像其他大多数的程序设计语言一样被广泛用于程序设计。在今天的实际应用中,它通常被应用在底层,硬件操作和高要求的程序优化的场合。驱动asmmovdh,10;asmint10h;/*调用BIOS中断配置光标位置*/}模块格式的:main(){asm{movah,2movbh,0movdl,20movdh,10int10h}}在这个小程式里面并没有突出“嵌入”二字。但是从这个程式中能够看出其基本格式。嵌入的各行代码前面加上asm关键字或把汇编语句放入asm代码块中,每行以分号或换行符结束,而注释必须是C语言格式的。下面我们来看一个让C语言和编协作例子2:main(){charconst*MESSAGE=”OutPutfromasm\n$”;asm{movah,9movdx,MESSAGEint21h}}上面这个例子十分的简单,他的纯C语言版本是:#includemain(){printf(“OutPutfromasm、n$”);}接下来我们看一看怎样让C语言调用汇编例程。还是一个简单的小程式:C语言部分如下:externcursor(int,int),main(){cursor(15,12);}汇编语言部分如下:.MODELSMALL.CODEPUBLIC_CURSORPROCPUSHBPMOVBP,SPMOVDH,[BP+4]MOVDL,[BP+6]MOVAH,02MOVBH,00INT10HPOPBPRET

_CURSORENDP…—C语言和汇编语言的优缺点:以c来举例优点:C的运行效率高;c可以实现硬件的直接访问;C代码的移植性好;缺点:C的代码复用性差;c的代码维护性差;C的扩展性差,即如果想增加新功能,需要修改较多的代码C语言的可读性差;至于汇编语言的优缺点基本和c的优缺点相反;C和汇编的选择:1•若只有较简单的逻辑操作、逻辑算法、简单运算,使用汇编会得到较为精准的代码,但用:也同样可以做到。2•若掺有复杂运算、浮点运算、非线性方程等,汇编恐怕无能为力了(最起码难度很大)。3•单片机种类繁多,各自的汇编语法大都不一样,若仅使用汇编,可扩充性、可移植性都很差,甩就会好的多。简单地说,很小的程序,主要是硬件简单控制的可以用汇编,稍微复杂一点尤其是牵涉到一些计算或者管理等方面的最好用c。效率,也提高了代码的可维护性有利于编:口c语言中,程序员所定义的每-一个变量,不管是基本类型ichariunsigned^效率,也提高了代码的可维护性有利于编:口c语言中,程序员所定义的每-一个变量,不管是基本类型ichariunsigned^构造类型(数组,struct,enum,union,链表等)的变量,在编译之后都安排在—^gnednomonsig|ed—-'挥应特定的内存空间。了,每一个变量都对应的变量还是汇编语言中,根本就没有变量的说法,程序员所面对的就是赤裸裸的存储空间,可能朗AM,可能是EEPROM,还可能是FLASH,程序员需要自己给这些存储空间命名(相对于C语言,汇编语言完全需要自己分配内存),然后直接进行访问(读操作或者写操作)。汇编语言是属于低级语言,也就是一种标记语言,标记一段0101001等这样的二进制代码。汇编语言不适合编写大型的项目,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论