程序设计综合
-
可编程逻辑器原理与程序设计王志鹏编著目前,大规模和超大规模的可编程逻辑器件得到了越来越广泛的实际应用。对它们的设计采用的是计算机辅助设计技术,使电子系统的研制时间大大缩短,特别是系统可编程逻辑器件,可以在不改变硬件设置的情况下,在现场对系统进行组态,并可实现电子系统的遥控升级。集成电路技术和计算机辅助技术的迅猛发展改变了电子系统的传统设计方法,它使电子设计自动化(EDA)和电子系统设计自动化(ESDA)成为现代电子系统设计和制造中的主要技术手段,使电子系统的设计从传统的单纯硬件设计方法变成为计算机软硬件协同设计的方法,由此可设计制造出实现各种功能的专用集成电路(ASIC)。随着电子技术的发展,芯片的复杂程度越来越高,人们对数万门乃至数百万门的电路设计的要求也越来越多。仅仅依靠原理图输入方式已经不能满足设计人员的要求,采用硬件描述语言HDL的设计方式就应运而生。设计工作从行为、功能级开始,并向着设计的高层次发展。这样,就出现了第三代EDA技术,其特点就是高层次设计的自动化(HLDA,HighLevelDesignAutomation)。第三代EDA系统中除了引人硬件描述语言::VHDL语言,还引入了行为综合和逻辑综合工具。采用较高的抽象层次进行设计,并按层次方法进行管理,这样就能大大提高处理复杂设计的能力,缩短设计周期。综合优化工具的采用使芯片的品质获得了优化,因此第三代EDA系统得到了迅速的推广。本书假定读者都已经了解数字硬件设计的基本知识,并熟悉如C语言等高级编程语言。对VHDL有初步了解的读者,阅读本书之后将会产生较好的效果。读者在阅读本书的某些章节时,必须事先分别对80C51单片机、ATA(ATAPl)总线操作和PCI总线操作有充分的了解。本书是VHDL用于数字电路设计的中高级读本,实用性强是本书的一个鲜明特色。书中通过大量实例介绍了该语言的基本内容和结构以及利用该语言在各种层次上对数字系统的建模方法,而且它对实际数字系统设计也极有帮助。可编程逻辑器件及EDA技术的学习和应用在国外已经相当普及。但与国外相比,我国尚有较大差距。为了适应电子系统设计技术的发展,培养电子科技人才,本书对原数字逻辑电路方面的内容做了较大改变,除了讲述必要的数字逻辑设计原理的基础知识外,对小规模电路的内容作丁精简,加强了中大规模组件方面的内容,特别是对系统可编程逻辑器件的编程及使用做了较详细的介绍,使读者能掌握具体技术。书中通过大量的实例介绍了该语言的基本内容和结构,这些实例不仅对读者掌握语言本身和建模方法有很大的帮助,而且对实际数字系统设计也有帮助。希望此书的出版对推动我国集成电路设计水平的提高有所促进,对高等学校的教学和课程改革有所帮助。由于作者水平有限,加之时间仓促,书中难免存在错误和不足,敬请广大读者予以批评指正。
-
Visual FoxPro程序设计与应用卢春霞等编著本书全面且详尽地介绍了VisualFoxPro6.0各界面的使用、面向过程程序设计基础、数据库及数据表的操作、关系数据库标准语言SQL查询与报表的操作、表单的基本概念与应用以及菜单设计知识等,并在本书最后安排了“学生成绩管理系统”的开发实例。本书循序渐进,注意实际操作能力的培养,可作为高校大中专学生的教材,也可作为对程序设计、数据库设计感兴趣的爱好者的参考图书,并可作为各类培训班学习的培训图书。
-
解析极限编程(美)贝克 编著本书由国际知名的微软技术专家撰写,主要探讨由.NET框架所提供的XML工具集。全书共分四个部分,第一部分深入讨论在.NET平台中实现XML的各个核心类,同时介绍读取器和编写器、数据验证以及XML模式方面的一些例子和参考信息;第二部分讨论XML数据操作,包括XMLDOM、XPath、XSLT等。第三部分介绍XML与数据访问,讲述XML与数据库之间的互操作;最后集中讨论应用程序与互操作性,并简要讨论SQLServer2及其XML扩展、.NET远程化、XMLWeb服务,并包括两个介绍XML配置文件、XML数据岛以及浏览器/部署托管控件的章节。本书条理清晰,实例丰富,适合学习XML的开发人员阅读,尤其适合.NET框架下的XML开发人员参考。在Microsoft.NET框架中,从远程化到Web服务,从数据访问到配置,XML无所不在。通过本书可以深入了解.NET中的大量XML核心类,学习使用解析器进行编程,本书是由MicrosoftASP.NET及MicrosoftADO.NET等前沿技术的知名专家撰写。在这里,你可以找到有关技术(如XML模式,XML转换以及XPath方面)的权威解释,还可发现有关数据访问的问题(如同步与串行化、DiffGram格式以及MicrosoftSQLServer2中的XML扩展方面)的广泛探讨。可以学会如何在.NET中从XML获取景佳的性能,也可以得到类似”什么时候应该使用XMLWeb服务而不是远程化”这些常见问题的答案。NET框架中的XML核心类.NETXML解析模型XML读取器与编写器验证读取器与编写器XML模式XML数据操作.NET中的XMLDOMXPathXSLTXML与数据访问SQLServer2中的XML扩展DataSet串行化DiffGram格式应用程序互操作性XML串行器.NET远程化XMLWeb服务XML数据岛配置文件。
-
Visual FoxPro 6.0程序设计教程黎能武主编本书依据教育部最新制定的《高职高专教育数据库应用技术课程教学基本要求》并 结合《全国计算机等级考试二级VisualFoxPro考试大纲》编写而成。主要内容为:Visual FoxPr06.0概述、基本数据元素、数据库的基本操作、数据处理与SQL、程序设计基础、 查询与视图、表单设计、报表与标签设计、菜单设计、多用户与共享技术等。 本书由浅入深、循序渐进、前后呼应,概念清晰、内容翔实、图文并茂、通俗易懂。 书中实例与知识点结合恰当,例题分析透彻,习题安排合理,所有程序代码均上机通过。 每章后面都附有大量习题,对计算机二级考试有很强的针对性。 本书可作为高等专科学校、高等职业学校、成人高等学校及本科院校举办的二级职 业技术学院各专业数据库应用技术教材,也可用作全国计算机等级考试二级——Visual FoxPr06.0程序设计的培训教材,还可作为广大工程技术人员进行VisualFoxPr06.0程序 设计及数据库项目开发的参考书。 本书为授课教师免费提供电子教案,此教案可从中国水利水电出版社网站下载,网址 为www.waterpub.com.cn。 本书配有((VisualFoxPr06.0程序设计实验指导及习题详解(第二版)》。
-
软件技术基础方大寿主编本书系统地介绍了软件技术的基础知识。内容包括数据结构、操作系统、数据库技术基础和软件开发技术等。每篇有练习题。本书注重概念,从实用角度出发,突出重点,深入浅出,通俗易懂。各个部分相对独立,自成体系,教师可根据专业需要和学时数调整讲课次序或筛选数学内容。本书可作为高等学校非计算机专业的理、工科本科和研究生的教材,也可作为科技工作者的参考用书。
-
Visual FoxPro 程序设计教程王毓珠主编;王毓珠等著本书是一本可视化程序设计语言的教材,其内容属于教育部关于高等院校计算机基础教育中第二层次——计算机技术,也是全国计算机等级考试新增的考试科目。本书使用大量协实例诠释系统的理论和功能,并在章后附有习题,帮助读者巩固所学的知识。此外为了帮助学生进一步掌握所学内容,我们还编写了配套的《Visual FoxPro程序设计习题解答与实验指导》。全书主要内容包括数据库及其相关知识,Visual FoxPro数据库及其表的基本操作,结构化程序设计方法,面向对象程序设计的思想及其在Visual FoxPro中的实现,数据库应用系统的开发步骤和实例。本书适合于高校用做数据库应用或可视化程序设计的教材,也可作为全国计算机等级考试辅导教材。
-
AVR单片机高级语言BASCOM程序设计与应用张茂青主编;李彦超,张敏,耿德根编著内容简介目录主要介绍类高级程序设计语言BASIC的AVR单片机开发平台:BASCOMAVR。BASCOMAVR如同BASIC一样,具有程序设计简单易学、用简单的语句可实现较复杂的功能等特点。其开发平台的使用简洁方便,并具有实物图形化的仿真平台,可以直观地仿真程序的运行结果,是AVR单片机初学者快速入门的最佳工具。本书通过大量的典型实例和屏幕截图进行直观的、由浅入深的论述,可作为单片机爱好者的自学读本,也可作高中、高职、技校、大专院校中自动化、计算机、电子等专业的教学参考书,亦可作为电子应用技术的培训教材。传统单片机系统的开发主要是用汇编语言编写应用程序。由于汇编语言程序的可读性、可移植性和结构性比较差,因此采用汇编语言编写单片机应用程序的时间比较长,调试和排错也比较困难,产品开发周期较长。为了提高编写应用程序的效率,改善程序的可读性和可移植性,缩短产品的开发周期,采用高级语言的开发平台来开发单片机系统已经成为发展趋势。本书主要介绍类高级程序设计语言BASIC的AVR单片机开发平台:BASCOMAVR。BASCOMAVR如同BASIC一样,具有程序设计简单易学、用简单语句可实现较复杂功能等特点。其开发平台使用简洁方便,并具有实物图形化的仿真平台,可以直观地仿真出运行结果。配合AVR单片机程序存储器具有可多次编程和在线下载的优点,使学习和使用AVR单片机变得十分容易和方便。使用BASCOMAVR开发AVR单片机系统,设计人员可以在半个小时内完成一个功能模块的设计编程和调试;而采用汇编语言,则需要几天甚至几个星期。本书不是讲述如何设计和开发一个复杂的实际产品,而是指导和帮助初学者通过自己的亲手实践,来熟悉掌握BASCOMAVR的使用。因而本书中将较少涉及AVR的硬件设计,以软件仿真为主,硬件为辅。有关硬件设计内容可参考其他AVR相关资料。计算机开发语言经过几十年的发展,涌现出越来越多的开发语言,但目前BASIC 语言仍然是全球最流行的语言。经市场调查资料显示,使用BASIC语言的程序员人数(包括专业和非专业的)要远远多于使用其他语言的程序员人数。BASCOM语言是由个人计算机平台移植到单片机平台上的BASIC语言。BASCOM语言继承了BASIC语言的编程特点:简单易学且便于使用,特别适合于具有BASIC语言基础的人员。BASCOM语言的优点如下:1 具有良好的可移植性可移植性的好坏对编程语言来讲是非常重要的。BASCOM语言具有良好的可移植性。AVR系列单片机是具有很多型号的一个单片机产品系列,如果使用汇编语言开发,由于汇编语言依赖硬件性很强,所以若要将这个系列中某种型号单片机的代码移植到另一种型号单片机上,代码可能要做很大修改,而使用BASCOM语言就不同了。在其他语言中要做的修改,在BASCOM中仅仅修改一下头文件即可。下面分别为将用汇编语言和BASCOM语言编写的ATmega8515芯片的代码移植到ATmega8535芯片上所需做的修改。汇编语言:.include "m8515def.inc".org $000rjmp main.org $007rjmp tim0_ovfmain:ldi r16,low(ramend)out spl,r16ldi r16,high(ramend)out sph,r16ldi r16,$02out timsk,r16ldi r16,$05out tccr0,r16ldi r17,131out tcnt0,r17ldi r16,$ffout ddrc,r16seihere:rjmp heretim0_ovf: in r1,sregldi r17,131out tcnt0,r17in r18,portccom r18out portc,r18out sreg,r1reti.include "m8535def.inc".org $000rjmp main.org $009rjmp tim0_ovfmain:ldi r16,low(ramend)out spl,r16ldi r16,high(ramend)out sph,r16ldi r16,$01out timsk,r16ldi r16,$05out tccr0,r16ldi r17,131out tcnt0,r17ldi r16,$ffout ddrc,r16seihere:rjmp heretim0_ovf: in r1,sregldi r17,131out tcnt0,r17in r18,portccom r18out portc,r18out sreg,r1retiBASCOM语言:$regfile = "m8515.dat"$crystal = 8000000Config Timer0 = Timer , Prescale = 1024Enable InterruptsEnable Ovf0On Ovf0 Overflow_isrDdrc= &HFFTcnt0 = 131DoLoopEndOverflow_isr:Tcnt0 = 131Portc= Not PortcReturn$regfile = "m8535.dat"$crystal = 8000000Config Timer0 = Timer , Prescale = 1024Enable InterruptsEnable Ovf0On Ovf0 Overflow_isrDdrc = &HFFTcnt0 = 131DoLoopEndOverflow_isr:Tcnt0 = 131Portc= Not PortcReturn注: 上面程序中加粗的内容为需要修改的内容。2 具有良好的可读性采用BASCOM语言编程,不像汇编语言那样,实现某种功能就是对特定的寄存器赋指定的值,而是用很直观的语句来表示。例如,使定时器/计数器0上升沿计数的程序如下:汇编语言:ldi r16,$07out tccr0,r16BASCOM语言:CONFIG TIMER0 = COUNTER,EDGE=RISING通过上面的比较可以很容易地看出,用汇编语言编程,需要了解每一个特殊寄存器的功能;在实现某种功能时,必须了解向某寄存器赋某值。很多情况下,这些寄存器的名称与其实现的功能没有意义上的联系。例如,对于tccr0,在没有任何资料的情况下,很难联想到它是定时器/计数器0的控制寄存器;因此,通过寄存器赋的值来联想它所实现的功能就更难了。就上例而言,若无资料,很难想象对tccr0赋$07这个命令字实现什么功能。这些都只是规定,这就要求编程人员对这些名称和数值要熟记,手边还要有单片机资料备查。而BASCOM就不同了,它替我们屏蔽掉了很多底层的东西。BASCOM的语句就是对实现功能的语言描述。就上例而言,若用BASCOM语句即为:CONFIG TIMER0 = COUNTER,EDGE=RISING一看这个语句,就可以把它要实现的功能猜得差不多了,因为它就是一个语言描述,很多语句就是英文单词,可以望词知意。BASIC语言在我国计算机知识普及过程中发挥的作用是有目共睹的。在过去的十几年中,BASIC语言曾经引导许多人从一个"计算机盲"向计算机应用迈出了可贵的第一步。在我国至少有1 000多万人学习过BASIC语言,其中不少人在入门之后继续提高,成为计算机应用人才,取得了很大的成绩。作者希望通过本书对BASCOMAVR的介绍,能够为单片机技术在我国推广尽自身的绵薄之力。全书共9章,由张茂青担任主编。其中第2章和第9章的部分内容由耿德根执笔,其余各章均由李彦超、张敏和张茂青共同执笔。全书由张茂青统稿。在本书的编写过程中,得到了双龙电子公司的大力支持;本书开发实验器SLAVRAD由双龙公司提供,书中程序均在该开发实验器上验证通过。由于作者水平有限,只是为了满足初学者的需要而抛砖引玉,利用工作之余写成本书,可能会有一些缺点或错误,希望得到专家和读者的指正,在适当的时间再作修订补充,以便跟上单片机技术的发展需要。读者在学习本书的过程中若有疑问,可以在由双龙电子赞助的21IC BBS(AVR单片机论坛)或双龙公司论坛(WWW. AVR. COM.CN的BASCOM专栏)提出,本书的编者及论坛中其他热心网友会进行解答。作者2004年6月于苏州大学 第1章 AVR单片机与BASIC语言1.1 BASIC语言的特点11.2 AVR单片机的特点21.3 用BASIC语言开发单片机的优势2第2章 BASCOMAVR集成开发环境2.1 基于高级语言BASCOMAVR的单片机开发平台52.1.1 实验硬件系统52.1.2 软件开发平台82.2 BASCOMAVR的安装与使用92.2.1 BASCOMAVR的安装92.2.2 启动BASCOMAVR142.2.3 BASCOMAVR使用快速入门152.2.4 BASCOMAVR界面简介192.2.5 键盘操作232.2.6 BASCOMAVR的参数设置242.2.7 软件仿真41第3章 BASCOM程序设计基础3.1 完整的BASCOM例子493.2 BASCOM基本语法介绍493.2.1 BASCOM程序的组成493.2.2 字符集513.3 数据类型523.4 常量和变量533.4.1 常量533.4.2 变量543.5 运算符和表达式573.5.1 算术运算符573.5.2 关系运算符583.5.3 逻辑运算符583.5.4 类型转换 593.6 常用标准函数603.6.1 数值型函数603.6.2 字符串函数653.6.3 数组相关函数743.7 常用语句介绍753.7.1 延时语句763.7.2 加1减1语句783.7.3 交换两个相同类型变量中的内容783.7.4 位运算793.8 浮点数823.8.1 浮点格式823.8.2 十进制和二进制833.8.3 整型数如何在计算机中表示833.8.4 使用浮点数的运算误差833.8.5 浮点数概念843.8.6 IEEE细节843.8.7 浮点数其他常见误差86第4章 赋值与输入/输出语句4.1 赋值语句874.2 输入/输出语句884.2.1 串口输入语句894.2.2 串口输出语句904.2.3 LCD输出语句924.2.4 小键盘数据输入934.2.5 读数和置数语句944.3 结束语句96第5章 BASCOM语言流程控制5.1 选择语句975.1.1 两路分支选择结构975.1.2 多行IF语句995.1.3 无条件转移语句(GOTO语句)1025.1.4 多路分支选择结构1025.1.5 多分支转移语句(ON VALUE语句)1055.1.6 程序举例1065.2 循环语句1095.2.1 WHILE循环语句1095.2.2 DO循环语句1105.2.3 FOR循环语句1115.2.4 循环嵌套1135.2.5 程序举例114第6章 BASCOM语言结构化设计:过程的使用6.1 过程的声明1176.1.1 SUB过程的声明1176.1.2 用户自定义FUNCTION过程的声明1186.2 过程的定义1186.2.1 SUB过程的定义1186.2.2 FUNCTION过程的定义1196.3 过程的调用1206.3.1 调用SUB过程1206.3.2 调用FUNCTION过程1216.4 参数传送1226.4.1 形参与实参1226.4.2 引用和传值1226.5 变量的作用域1246.5.1局部变量1246.5.2 全局变量1266.6 过程的嵌套1276.6.1 SUB过程嵌套1286.6.2 FUNCTION过程嵌套1296.7 转子与返回129第7章 AVR BASCOM语言应用实例7.1 一个程序代码完整的编写、调试和下载过程1347.2 I/O端口输出的简单例子1437.3 使用AVRStudio进行程序代码调试1447.4 模仿CD或MP3播放器液晶屏显示1537.5 LCD中显示自定义字符1577.6 贪吃蛇程序1617.7 发音程序1647.8 控制微型伺服马达167第8章 Atmel 单片机硬件结构8.1 AVR单片机体系结构概述1718.2 存储器1728.2.1 Flash程序存储器1728.2.2 数据存储器1728.2.3 EEPROM存储器1758.2.4 BASCOM中存储器操作语句1768.2.5 存储器部分在仿真环境中的使用1788.3 并行I/O端口1828.3.1 I/O端口相关寄存器1828.3.2 I/O端口在仿真环境中的使用方法1858.4 中断1898.4.1 中断的概念1898.4.2 中断的作用1898.4.3 中断优先级1898.4.4 中断源1898.4.5 中断的执行过程1918.4.6 中断仿真1968.5 定时器/计数器1998.5.1 基本概念1998.5.2 定时器/计数器0(T/C0)1998.5.3 定时器/计数器12078.5.4 定时器/计数器22178.6 USART串口通信2188.6.1 串行通信的基本概念2188.6.2 AVR系列单片机串行接口2198.6.3 BASCOM中有关USART操作2198.7 模/数转换2218.7.1 A/D转换在仿真环境中使用2228.7.2 A/D 转换应用实例2238.8 模拟比较器227第9章 AVR单片机存储器的程序下载9.1 概述2289.2 ISP下载器接口2289.3 ISP串行下载操作2299.3.1 启动SL ISP下载软件的方法2299.3.2 SL ISP下载软件介绍230附录ABASCOM错误代码附录BASCII码参 考 文 献
-
VISUAL FOXPRO案例精粹150例陈锋编著本书是一本实用的Visual FoxPro基础编程教材,通过150个应用实例,系统地介绍了Visual FoxPro 8.0的特点和数据库系统开发技巧。本书内容全面,范例丰富、实用,全书就数据库开发平台Visual FoxPro 8.O所涉及的内部函数、对象、命令格式属性、系统保留字和数据库的建设与使用、维护、图形界面的构建,应用程序开发等多个方面进行了分析,并以具体生动的示例详细介绍其使用方法、技巧及其使用范围,以指导开发者的应用实践。本书还具有丰富的图片示例,以求方便准确地说明问题。本书适用面广,不仅适合数据库和Visual FoxPro 8.0应用程序开发人员学习参考,同时也适合作高等院校相关专业师生的教学、自学参考书,还可作为Visual FoxPro系列软件教学班的培训教材。
-
Visual FoxPro程序设计教程与上机实训倪文志等编本书介绍了VisualFoxPro可视化程序设计方法和数据库的操作和使用。主要内容包括VisualFoxPro的基础知识,VisualFoxPro数据表的设计、建立和修改,数据库表的有效性检验,多表操作,视图和查询的建立,SQL语言的数据定义,修改和查询功能,报表的菜单的建立与使用,顺序结构、选择结构和循环结构程序设计,自定义过程和函数的建立和调用,VisualFoxPro可视化程序设计方法和具体实现,数据训的开发实例。本书实例丰富、图文并茂、结构清晰、为编精讲、并配以大量上机操作指导和习题练习。符合全国计算机等级(二级VisualFoxPro)考试大纲,适合作为高职、高专及各类中等学校的教材,也可作为计算机等级考试的培训教材,还可作为有一定程序设计初学者的自学参考书。本书特色·大量的实例,操作与图文相结合,讲解通俗易懂·丰富的习题,学完即练,短时间内掌握所需知识·详实的内容,符合全国计算机等级(二级VisualFOxPro)考试大纲·广泛的爱众,可作为初学者或高职高专院校的教材
-
Visual FoxPro程序设计李明龙编著本书以Visual FoxPro技术为基础,全面系统地介绍中小型数据库的操作和应用,主要内容包括、数据库的基本概念、数据类型与运算、表的基础操作、查询与数据库操作、程序设计基础、表单设计基础、报表设计基础、菜单设计与应用及具体的数据库应用程序开发过程。各章都配有针地性较强的习题,有助于培养学生的实际动手能力。 本书既可作为高职高专计算机及相关专业的教材,也可作为计算机应用人员与数据库爱好者的参考读物。