虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

progra<b>m</b><b>m</b>ing

  • Keil C51使用详解

    Keil C51使用详解Keil C51 是美国Keil Software 公司出品的51 系列兼容单片机C 语言软件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C 来开发,体会更加深刻。Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍 Keil C51 开发系统各部分功能和使用。第二节 Keil C51 单片机软件开发系统的整体结构C51 工具包的整体结构,如图(1)所示,其中uVision 与Ishell 分别是C51 forWindows 和for Dos 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE 本身或其它编辑器编辑C 或汇编源文件。然后分别由C51 及A51 编译器编译生成目标文件(.OBJ)。目标文件可由LIB51 创建生成库文件,也可以与库文件一起经L51 连接定位生成绝对目标文件(.ABS)。ABS 文件由OH51 转换成标准的Hex 文件,以供调试器dScope51 或tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM 中。图(1) C51 工具包整体结构图第三节 Keil C51 工具包的安装81. C51 for Dos在 Windows 下直接运行软件包中DOS\C51DOS.exe 然后选择安装目录即可。完毕后欲使系统正常工作须进行以下操作(设C:\C51 为安装目录):修改 Autoexec.bat,加入path=C:\C51\BinSet C51LIB=C:\C51\LIBSet C51INC=C:\C51\INC然后运行Autoexec.bat2. C51 for Windows 的安装及注意事项:在 Windows 下运行软件包中WIN\Setup.exe,最好选择安装目录与C51 for Dos相同,这样设置最简单(设安装于C:\C51 目录下)。然后将软件包中crack 目录中的文件拷入C:\C51\Bin 目录下。第四节 Keil C51 工具包各部分功能及使用简介1. C51 与A51(1) C51C51 是C 语言编译器,其使用方法为:C51 sourcefile[编译控制指令]或者 C51 @ commandfile其中 sourcefile 为C 源文件(.C)。大量的编译控制指令完成C51 编译器的全部功能。包控C51 输出文件C.LST,.OBJ,.I 和.SRC 文件的控制。源文件(.C)的控制等,详见第五部分的具体介绍。而 Commandfile 为一个连接控制文件其内容包括:.C 源文件及各编译控制指令,它没有固定的名字,开发人员可根据自己的习惯指定,它适于用控制指令较多的场合。(2) A51A51 是汇编语言编译器,使用方法为:9A51 sourcefile[编译控制指令]或 A51 @ commandfile其中sourcefile 为汇编源文件(.asm或.a51),而编译控制指令的使用与其它汇编如ASM语言类似,可参考其他汇编语言材料。Commandfile 同C51 中的Commandfile 类似,它使A51 使用和修改方便。2. L51 和BL51(1) L51L51 是Keil C51 软件包提供的连接/定位器,其功能是将编译生成的OBJ 文件与库文件连接定位生成绝对目标文件(.ABS),其使用方法为:L51 目标文件列表[库文件列表] [to outputfile] [连接控制指令]或 L51 @Commandfile源程序的多个模块分别经 C51 与A51 编译后生成多个OBJ 文件,连接时,这些文件全列于目标文件列表中,作为输入文件,如果还需与库文件(.LiB)相连接,则库文件也必须列在其后。outputfile 为输文件名,缺少时为第一模块名,后缀为.ABS。连接控制指令提供了连接定位时的所有控制功能。Commandfile 为连接控制文件,其具体内容是包括了目标文件列表,库文件列表及输出文件、连接控制命令,以取代第一种繁琐的格式,由于目标模块库文件大多不止1 个,因而第2 种方法较多见,这个文件名字也可由使用者随意指定。(2) Bl51BL51 也是C51 软件包的连接/定位器,其具有L51 的所有功能,此外它还具有以下3 点特别之处:a. 可以连接定位大于64kBytes 的程序。b. 具有代码域及域切换功能(CodeBanking & Bank Switching)c. 可用于RTX51 操作系统RTX51 是一个实时多任务操作系统,它改变了传统的编程模式,甚至不必用main( )函数,单片机系统软件向RTOS 发展是一种趋势,这种趋势对于186 和38610及68K 系列CPU 更为明显和必须,对8051 因CPU 较为简单,程序结构等都不太复杂,RTX51 作用显得不太突出,其专业版软件PK51 软件包甚至不包括RTX51Full,而只有一个RTX51TINY 版本的RTOS。RTX51 TINY 适用于无外部RAM 的单片机系统,因而可用面很窄,在本文中不作介绍。Bank switching 技术因使用很少也不作介绍。3. DScope51,Tscope51 及Monitor51(1) dScope51dScope51 是一个源级调试器和模拟器,它可以调试由C51 编译器、A51 汇编器、PL/M-51 编译器及ASM-51 汇编器产生的程序。它不需目标板(for windows 也可通过mon51 接目标板),只能进行软件模拟,但其功能强大,可模拟CPU 及其外围器件,如内部串口,外部I/O 及定时器等,能对嵌入式软件功能进行有效测试。

    标签: Keil C51 使用详解

    上传时间: 2013-11-01

    上传用户:zhouxuepeng1

  • linux 中断和设备驱动

    linux 中断和设备驱动 本章介绍L i n u x内核是如何维护它支持的文件系统中的文件的,我们先介绍 V F S ( Vi r t u a lFile System,虚拟文件系统),再解释一下L i n u x内核的真实文件系统是如何得到支持的。L i n u x的一个最重要特点就是它支持许多不同的文件系统。这使 L i n u x非常灵活,能够与许多其他的操作系统共存。在写这本书的时候, L i n u x共支持1 5种文件系统: e x t、 e x t 2、x i a、 m i n i x、 u m s d o s、 msdos 、v f a t、 p r o c、 s m b、 n c p、 i s o 9 6 6 0、 s y s v、 h p f s、 a ffs 和u f s。无疑随着时间的推移,L i n u x支持的文件系统数还会增加。

    标签: linux 中断 设备驱动

    上传时间: 2013-11-13

    上传用户:zxh122

  • —图数据类型的实现——问题描述:图是一种较线性表和树更为复杂的数据结构。在图形结构中

    —图数据类型的实现——问题描述:图是一种较线性表和树更为复杂的数据结构。在图形结构中,结点之间的关系是任意的,任意两个数据元素之间都可能相关,因此,图的应用非常广泛,已渗入到诸如语言学‘逻辑学、物理、化学、电讯工程、计算机科学及数学的其它分支中。因此,实现图这种数据类型也尤为重要,在该练习中即要实现图的抽象数据类型。基本要求:2、 定义出图的ADT;3、 采用邻接矩阵及邻接表的存储结构(有向图也可使用十字链表)实现以下操作:a. 构造图 b. 销毁图 c. 定位操作d. 访问图中某个顶点的操作e. 给图中某个顶点赋值的操作f. 找图中某个顶点的第一个邻接点g. 找出图G中顶点v相对于w的下一个邻接点h. 在图G中添加新顶点vi. 删除图G中顶点vj. 在图G中插入一条边k. 在图G中删除一条边l. 实现图的深度遍历操作m. 实现图的广度遍历操作参考提示:具体内容参看教科书本156页实验要求:对于以上具体操作要求实现时有良好的用户交互界面。详细设计、编码、测试。

    标签: 数据类型 图形 线性

    上传时间: 2015-03-13

    上传用户:saharawalker

  • DELPHI basicCtrl+NUM 直接将光标跳到NUM处

    DELPHI basicCtrl+NUM 直接将光标跳到NUM处,NUM是用Ctrl+Shift+NUM设置的标号。 NUM不能用小键盘。 Ctrl+Home 将光标移至文件头。 Ctrl+End 将光标移至文件尾。 Ctrl+B Buffer List窗口。 Ctrl+I 同Tab键。 Ctrl+M 同Enter键。 Ctrl+N 同Enter键,但光标位置保持不变。 Ctrl+T 删除光标右边的一个单词。 Ctrl+Y 删除光标所在行。 Ctrl+Shift+↑ 光标在函数体内时,将光标快速移至当前函数声明处。 Ctrl+Shift+↓ 光标在函数声明行时,将光标快速移至函数定义处。 Ctrl+Shift+C 声明一个过程或函数后,直接生成过程或函数的名称、begin、end Ctrl+Shift+E 光标在Edit窗口和Explorer窗口间切换。 Ctrl+Shift+G 插入GUID。 Ctrl+Shift+J 弹出Delphi语句提示窗口,选择所需语句将自动完成一条语句。 Ctrl+Shift+T 在光标行加入To-Do注释。 Ctrl+Shift+Y 删除光标之后至本行末尾之间的文本。 Ctrl+F3 Call Stack窗口。 Ctrl+F4 等于File菜单中的Close项。

    标签: basicCtrl NUM DELPHI 光标

    上传时间: 2014-11-26

    上传用户:kr770906

  • <1>问题描述 有一个魔王总是使用自己的一种非常精练而又抽象的语言讲话

    <1>问题描述 有一个魔王总是使用自己的一种非常精练而又抽象的语言讲话,没有人能听得懂,但他的语言是可以逐步解释成人能听懂的语言,因为他的语言是由以下两种形式的规则由人的语言逐步抽象上去的: (1) α 转换为 β1β2…βm (2) (θδ1δ2…δn) 转换为 θδnθδn-1… θδ1θ 在这两种形式重,从左到右均表示解释。试写一个魔王语言的解释兄,把他的话解释成人能听得懂的话。 [基本要求] 用下述两条具体规则和上述规则形式(2)实现。设大写字母表示魔王语言的词汇;小写字母表示人的语言词汇;希腊字母表示可以用大写字母或小写字母代换的变量。魔王语言可含人的词汇。 (1)B 转换为 tAdA (2)A 转换为 sae

    标签: lt gt 抽象 语言

    上传时间: 2013-12-17

    上传用户:jyycc

  • 魔王语言解释 [问题描述] 有一个魔王总是使用自己的一种非常精练而又抽象的语言讲话

    魔王语言解释 [问题描述] 有一个魔王总是使用自己的一种非常精练而又抽象的语言讲话,没有人能听得懂,但他的语言是可以逐步解释成人能听懂的语言,因为他的语言是由以下两种形式的规则由人的语言逐步抽象上去的: (1) α 转换为 β1β2…βm (2) (θδ1δ2…δn) 转换为 θδnθδn-1… θδ1θ 在这两种形式重,从左到右均表示解释。试写一个魔王语言的解释兄,把他的话解释成人能听得懂的话。 [基本要求] 用下述两条具体规则和上述规则形式(2)实现。设大写字母表示魔王语言的词汇;小写字母表示人的语言词汇;希腊字母表示可以用大写字母或小写字母代换的变量。魔王语言可含人的词汇。 (1)B 转换为 tAdA (2)A 转换为 sae [测试数据] B(exnxgz)B解释成tsaedsaeezegexenehetsaedsae 若将小写字母与汉字建立下表所示的对应关系,则魔王说的话是:“天上一只鹅地上一只鹅鹅追鹅赶鹅下鹅蛋鹅恨鹅天上一直鹅地上一只鹅”。 t d s a e z g x n h 天 地 上 一只 鹅 追 赶 下 蛋 恨

    标签: 语言 抽象

    上传时间: 2014-12-21

    上传用户:大三三

  • . 缓存处理技术

    . 缓存处理技术,定时更新系统数据,提升系统性能 B. 系统模板管理功能,方便制作个性化的系统模板,可后台管理 C. 首页商品和店铺的自助推荐功能,用户可使用虚拟币采用竞价方式自助推荐自己的商品和店铺 D. 店铺的皮肤转换,重新设计店铺结构 E. 商品,店铺,求购信息的搜索,采用积木式查询,减少等待时间 F. 支付宝按钮支付功能(用于系统用户与用户间的付款交易) G. 重新制作广告系统,静态JS读取速度更快 H. 最高价竞拍模式中加入一口价购买的功能 I. 后台管理员的分权限管理(管理,添加,查看) j. 后台商品首页推荐,店铺首页推荐功能 K. 商品可实现四级分类处理 L. 增加店铺分类功能 M. 外接用户数据库(AC和SQL两种),系统邮件发送,图片上传,缓存更新,MD5加密等后台管理功能 N. 实现了商品登陆收费的功能

    标签: 缓存 处理技术

    上传时间: 2015-06-24

    上传用户:我干你啊

  • HMM(Hidden Markov Model)

    HMM(Hidden Markov Model),狀態數目N=3,觀察符號數目M=2,時間長度T=3。 (a) Probability Evaluation: 給定狀態轉換機率A、狀態符號觀察機率B、和起始機率 ,求觀察序列 出現的機率。 (b) Optimal State Sequence: 給定狀態轉換機率A、狀態符號觀察機率B、起始機率 、和觀察序列 ,求一個狀態序列 使得O出現的機率最大。 (c) Parameter Estimation: 給定狀態轉換機率A、狀態符號觀察機率B、起始機率 、和觀察序列 ,求新的A、B、 ,使得O出現的機率最大。

    标签: Hidden Markov Model HMM

    上传时间: 2014-08-28

    上传用户:heart520beat

  • 加密算法 Test Driver for Crypto++, a C++ Class Library of Cryptographic Primitives: - To generate an

    加密算法 Test Driver for Crypto++, a C++ Class Library of Cryptographic Primitives: - To generate an RSA key cryptest g - To encrypt and decrypt a string using RSA cryptest r - To calculate MD5, SHS, and RIPEMD-160 message digests: cryptest m file - To encrypt and decrypt a string using DES-EDE in CBC mode: cryptest t - To encrypt or decrypt a file cryptest e|d input output - To share a file into shadows: cryptest s <pieces> <pieces-needed> file (make sure file has no extension, if you re running this under DOS) - To reconstruct a file from shadows: cryptest j output file1 file2 [....] - To gzip a file: cryptest z <compression-level> input output - To gunzip a file: cryptest u input output - To run validation tests: cryptest v - To run benchmarks: cryptest b [time for each benchmark in seconds]

    标签: Cryptographic Primitives generate Library

    上传时间: 2015-07-16

    上传用户:wqxstar

  • //=== === === === === === === === === === === ===== //函数说明 //函数名称:Correlation //函数功能:计算最小二乘法拟合的多项

    //=== === === === === === === === === === === ===== //函数说明 //函数名称:Correlation //函数功能:计算最小二乘法拟合的多项式的相关系数 //使用方法:int M------ 拟合多项式的阶数(已知条件) // double *b--- 拟合曲线的系数,排列顺序为由高阶到低阶(已知条件) // double *x--- 结点x轴数据(已知条件) // double *y--- 结点y轴数据(已知条件) // double *Yg-- 结点估计值,个数为m(过程变量) // int m------ 结点个数(已知条件) //注意事项:多项式阶数最高为10,多项式的形式为 y = a0 + a1x +a2x2

    标签: Correlation 函数 计算 最小二乘法拟合

    上传时间: 2013-11-26

    上传用户:change0329