物联网应用开发张军朝电子课件第2章节语言基础.ppt

物联网应用开发张军朝电子课件第2章节语言基础.ppt

  1. 1、本文档共181页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.5.9 常用内部函数 2 转换函数 在编写程序过程中,经常需要数据类型之间进行转换,此时可使用类型转换函数。 2.5.9 常用内部函数 Val函数在执行转换时,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美元号($)与逗号(,),都不能被识别。但是函数可以识别进位制符号o(八进制)和x(十六进制)。空格、制表符和换行符都从参数中被去掉。 如例: Val(“1615 198th Street N.E”) ‘1615198 2.2.7 Thumb指令简介 4 Thumb内存访问指令 LDMIA和STMIA 这两条指令用来读取和存入多个寄存器的内容,指令格式如下: op Rn,{reglist} 2.2.7 Thumb指令简介 5 Thumb软中断和断电指令 SWI 软中断指令,格式如下: SWI immed_8 BKPT 断点指令,格式如下: BKPT immed_8 2.2.7 Thumb指令简介 6 Thumb伪指令 ADR Thumb伪指令 ADR伪指令读取一个程序相对的地址到寄存器,指令格式如下: ADR reglist,expr LDR Thumb伪指令 LDR伪指令读取地址或32位的常量到低寄存器中,指令格式如下: LDR Rd,[pc,#imm] 2.3 嵌入式C语言 ARM的编程语言常用的有两种:一种是汇编语言,另一种是C语言。汇编语言的机器代码生成效率很高,但可读性不强,复杂一点的程序就更难读懂。而C语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言;而且C语言还可以嵌入汇编语言来解决高时效性的代码编写问题。对于开发周期来说,中大型软件的编写用C语言的开发周期通常大大短于汇编语一倍。因此,在掌握一定汇编语言的基础上,就需要进一步学习C语言编程了。 2.3.1 C 语言简介 1 C语言的发展过程 C语言是在20世纪70年代初问世的。1978年,美国电话电报公司(ATT)贝尔实验室正式发表了C语言。同时由B.W.Kernighan和M.R.ritchit合著了著名的《THE C PROGRAMMING LANGUAGE》一书。通常简称为《KR》,也有人称之为《KR》标准,但是,在《KR》中并没有定义一个完整的标准C语言,后来美国国家标准协会(ANSI)在此基础上制定了一个C语言标准,于1983年发表,通常称之为ANSI C。到1987年,ANSI又公布了新标准--87 ANSI C即现行的C语言标准。 2 C语言的特点 C语言是一种结构化语言,它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强,它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构;还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作。因此,C语言集高级语言和低级语言的功能于一体,效率高,可移植性强,特别适合单片机系统的编程与开发。 2.3.1 C 语言简介 3 采用C语言编程的好处 与汇编语言相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C语言来开发,体会更加深刻。ARM采用C语言编程有以下几点好处: (1)编程调试灵活方便。 (2)生成的代码编译效率高。 (3)模块化开发。 (4)可移植性好。 (5)便于项目维护管理。 2.3.2 简单C语言程序的构成 通过一些简单的C语言程序,可以总结出以下几点: (1)C程序是由函数构成的,一个C源程序至少包括一个函数,一个C源程序有且只有一个名为main的函数,也可能包含其他函数,因此,函数是C程序的基本单位。主程序通过直接书写语句和调用其他函数来实现有关功能,这些其他函数可以是由C语言本身提供给用户的,这样的函数称之为库函数(本例未使用库函数),也可以是用户自己编写的函数,这样的函数称之为用户自定义函数。那么库函数和用户自定义函数有什么区别呢?简单地说,任何使用C语言的人,都可以直接调用C的库函数而不需要为这个函数写任何代码,只需要包含具有该函数说明的相应的头文件即可;而自定义函数则是完全个性化的,是用户根据自己需要而编写的。 2.3.2 简单C语言程序的构成 (2)一个函数由两部分组成: 函数的首部,即函数的第一行。包括函数名、函数类型、函数属性、函数参数(形式参数)名、参数类型。 例如:void Delay(unsigned int i) 一个函数名后面必须跟一对圆括号,即便没有任何参数也是如此。 函数体,即函数首部下面的大括号“{}”内的部分。如果一个函数内有多个大括号。则最外层的一对“{}”为函数体的范围。 (3)一个C语言程序,总是

文档评论(0)

开心农场 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档