《嵌入式编程基础》PPT课件

《嵌入式编程基础》PPT课件

ID:45496993

大小:353.34 KB

页数:38页

时间:2019-11-13

《嵌入式编程基础》PPT课件_第1页
《嵌入式编程基础》PPT课件_第2页
《嵌入式编程基础》PPT课件_第3页
《嵌入式编程基础》PPT课件_第4页
《嵌入式编程基础》PPT课件_第5页
资源描述:

《《嵌入式编程基础》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式编程基础linux平台下的应用程序类型linux下的应用程序主要有两种特殊的文件来代表:可执行文件和脚本程序。可执行文件是能够被计算机直接执行的程序,相当于win平台下exe文件。脚本程序则是一组指令,这些指令将由另外一个程序(一般来说是shell解释器)来执行,相当于dos下的bat文件。Shell如何解释执行命令内置命令---直接执行实例程序(用户给出路径的)---按照用户给出的路径执行实例程序(用户未给出路径)---按照PATH变量给出的路径执行将被搜索的那些子目录都被保存到一个名字为PATH的shell变量里面,和dos下的

2、情况差不多。PATH是由系统管理员预先配置好了的,通常包括/bin,/usr/bin,/usr/local/bin,你可以使用echo$PATH来显示。如果你是使用的root登陆系统,则还会多包括/sbin,/usr/sbin目录。应用程序开发流程编写应用程序(vi编辑器)编译应用程序(编译器)调试运行应用程序(调试器)执行(直接输入程序命令运行)应用程序开发流程(实例)为了快速获得对linux平台下应用程序设计的体验,我们首先编写经典的helloworld程序。下面的代码来自cprogramminglanguage第一章#include

3、main(){printf("hello,world");}利用vi进行编辑首先,进入linux的控制台界面。然后,在某个目录建立一个空的c程序文件,比如利用touch/home/zhaohui/linuxApp/hello.c命令然后cd到当前目录,调用vi编辑器对这个空文件进行编辑,输入这个程序的源代码,(利用vihello.c命令,进入vi编辑器,然后进入vi的编辑状态,然后输入程序,然后进入vi的命令状态,进行源程序的保存和vi的退出,回到shell提示符。)--------------hello.c----

4、------------------#includeintmain(){printf("Hello,Linuxprogrammingworld!");return0;}-------------------------------------------gcc编译和程序运行然后在当前目录输入编译这个程序的命令,在程序没有错误的情况下,会在当前目录得到一个可执行文件hello。程序的运行如图所示。注意:如果你只是输入gcchello.c则生成的可执行文件的名字是a.out过程总结这个命令会依次调用gcc的预编译器(cp

5、p),汇编器(生成.s文件),编译器(生成.o文件)和链接器程序(ld)。$gcc-Ehello.c-ohello.cpp$gcc-xcpp-output-chello.cpp-ohello.o$gcchello.o-ohello提示:命令$gcc–O2-Shello.c可以得到.s汇编文件。如果打算学习某个c语言程序所对应的汇编代码。可以参考csapp的第三章。诸如变量、数组、指针、控制流、子程序等。当然也可以使用objdump-dhello来查看汇编代码。诸如objdump等这些命令称为binutils,是非常强大的代码分析工具。比如

6、addr2line,ar,as,gprof,ld,nm,objcopy,objdump,ranlib,size,strings,strip等。具体可以参考其man命令手册。文件I/O编程文件描述符文件I/O相关操作函数open函数close函数lseek函数read函数write函数dup和dup2函数fcntl函数文件描述符文件描述符定义linux中每打开一个文件都有一个文件描述符与之对应。该描述符是一个非负整数。取值0对应标准输入,表示键盘1对应标准输出,一般屏幕2表示出错输出,一般到屏幕文件I/O操作函数---open、close函

7、数Open函数可以打开一个文件,也可以创建并打开文件;调用方式:#include#include#includeIntopen(constcharpathname,intflag…)调用成功返回文件描述符,失败返回-1Close函数---关闭一个文件,释放该文件上的记录锁调用方法:#includeIntclose(intfiledes)返回成功0,出错-1文件I/O操作函数---read函数Read函数用来读取打开文件的数据用法:#include

8、istd.h>ssize_tread(intfiledes,void*buf,size_tnbytes)函数作用:filedes所代表的文件的当前位移量处读取nbytes个字节的数据到buf中

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。