CODE SEGMENT
ASSUME CS:CODE
ORG 100H
START: PUSH CS
POP DS
MOV AL,C
CBW
MOV CX,AX
MOV AL,A
MOV BL,B
IMUL BL
SUB AX,CX
MOV Y,AX
INT 3
MOV AH,4CH
INT 21H
A DB 1
B DB 2
C DB 3
Y DW
CODE ENDS
END START
assume 的作用是关联段名与段寄存器。
如果你在数据段中定义了变量名,比如:
x db 0 1
而你在代码中,需要直接使用这个变量名,比如:
mov al, x 1
那么,汇编程序在汇编时,就会报告错误。
因为,mov指令中遇到 x 这个变量名时,汇编程序不知道它要用哪个段寄存器作为段地址。
所以:
若要用变量名直接访问,或使用语句标号(比如你例子中的标号 start)就必须要在assume伪指令中将这些变量或标号所在段的段名,与段寄存器名关联,否则会出错。
如果你不使用段中的变量名,可以不关联这个段的段名与寄存器。
如果你访问变量时,都指定了段跨越前缀,关联也不是必须的。比如你可以用 mov al, ds:x访问变量 x 。
高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,如目前流行的VB、VC、FoxPro、Delphi等,这些语言的语法、命令格式都各不相同。 像最简单的编程语言PASCAL语言也属于高级语言
高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可将它们分为两类:
解释类:执行方式类似于我们日常生活中的“同声翻译”,应用程序源代码一边由相应语言的解释器“翻译”成目标代码(机器语言),一边执行,因此效率比较低,而且不能生成可独立执行的可执行文件,应用程序不能脱离其解释器,但这种方式比较灵活,可以动态地调整、修改应用程序。
编译类:编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件(* OBJ)才能执行,只有目标文件而没有源代码,修改很不方便。现在大多数的编程语言都是编译型的,例如Visual C++、Visual Foxpro、Delphi等。
一.汉语编程定义:
“汉语编程”一种采用汉民族语言文字进行电脑编程的语言系统,支持基于汉语字、词编程,符合计算机符号语言规范,并继续向自然语言发展。
表面汉化菜单的而未将关键字汉化的编程语言,我们不应称之为汉语编程语言,而应称之为“汉化编程”语言,如VB中文版等。
为什么严格来说称“汉语编程”而不称之为“中文编程”呢?因为中国是个多民族的国家,语种众多,有:汉语,藏语,满语等;中文字体也非常多,如篆书、金书、隶书、楷书等。但一般情况下,称中文编程时,也特指汉语编程。
二.汉语编程知多少
已知的汉语编程工具或系统据不完全统计有三十个以上,列出如下:
四.汉语编程的发展和需求
上世纪七十年代以来,中国开发了一个DOS下的中文编程语言,但由于WINDOWS的流行,还未等推广,就被淘汰。
八十年代开始,台湾已见到繁体中言语版本的LOGO语言。
九十年代,沈志斌的汉语编程初步推出。并申请了“汉语编程单片机”专利。年,易语言成为汉语编程
笔者发现一个有趣的现象:某个国家的最初发明,传到其他国家,就会有所发展,如足球最早是中国发明的,传到欧洲,就发展地比中国要好;乒乓球是英国发明的,传到中国,中国人人人都会打两下,有广大的群众基础,就发展地比其他地区都好。因此笔者认为,编程虽然是外国人发明的,但传到中国来,中国人民以他们的聪明才智,转化为自己的东西,不仅没有固步自封,而且会实现更大的融合。
4.嵌入式系统难以应用汉语吗?
几十年前,有专家预言,汉语不适合计算机,看过了不久,计算机就可以显示汉字了。还有的专家说,中文输入没有英文快,但过了不久,五笔字型推出了,专业打字员输入的速度甚至比英文还快。看来专家学者的预言并不可靠,我们不能迷信个别专家,而是要靠自己的努力去改变。
嵌入式系统大多数人已接触到了,打个现实的比方,现在的手机功能已越来越接近电脑了,很多电脑有的功能,手机都有,而且上面所运行的可以是WINCE、Mobile、Linux系统,有的甚至可以用英文写段JAVA代码直接运行了。因此,强求用指令集用汉语确实没有什么优势,但从编程这点考虑,汉语实现嵌入式系统的编程不是没有可能,既然英语可以直接转换为机器码,汉语也可以直接转换为机器码,可以通过汉语直接调用指令集的办法实现。
中国科学技术发展的确晚于欧美国家,中国已错过了前两次技术革命,再也不能错过这第三次了,不能因为别人什么都有了自己就不做了,如果有这样的思想,中国的两d一星也不要了,大飞机也别造了,嫦娥也别奔月了。
总之,一个新生事物,可能会暂时存在一些缺点,普及和应用汉语编程还有很长的路要走,中国要想成为软件大国,就一定要普及大众化,象打乒乓球一样,人人都能写程序,都可以用自己的母语编程,形成广大的用户基础,就不愁软件行业不发展。笔者不会引用很资深的专家学者的话树立权威,希望大家共同思考这个问题。我相信,在中国人的努力下,一定会开创一个更美好的未来。
七.目前流行的一些汉语编程的简介
由于有些语言已不再开发和推广了,及篇幅关系,下文中以目前一些流行的语言进行介绍。
易语言
于2000年开始开发,是一款全中文、全可视、跨平台的编程语言。易语言汉语编程环境由核心层、扩展层、环境层和应用层组成。核心层的易语言及其编译器构成了基础编程平台;扩展层提供了专业编程人员的开发运行平台;环境层提供了用户集成开发环境;应用层支持用户创建本行业、领域的开发平台的框架。
易语言汉语编程环境是一个支持基于汉语字、词编程的、全可视化的、跨主流 *** 作系统平台的编程环境;拥有简、繁汉语以及英语、日语等多语种版本;能与常用的编程语言互相调用;具有充分利用API,COM、DLL、OCX组件,各种主流数据库,各种实用程序等多种资源的接口和支撑工具。
易语言飞扬
于2006年开始开发,是一款简单易学、高效实用、面向对象、跨平台的计算机通用编程语言。它是完全面向对象的编程语言,因而在面向对象机制上,与同为面向对象的Java、C#等编程语言,有相似甚至相同之处。它的语法脱胎自“类C语言”,因而在语法上,与C、C++、Java、C#等编程语言,有相似甚至相同之处。
“易语言飞扬”的主要特性
更具现代性:完全面向对象,跨平台,支持Unicode、多线程,垃圾自动回收,类型反射,静态编译,动态类型装载等等。
更简单易学:繁琐、晦涩、不常用的语言特性被尽量精简,且补充了很多便于使用的语言特性,支持中英文双语关键字,在语法格式和关键字方面,尽量与现有类似编程语言相同,减少了学习量。
对系统环境的适应和控制能力更强:定义有语言无关的“EF对象模型”,从而允许使用其它各种编程语言来直接书写“易语言飞扬”本地类,和用“易语言飞扬”本身书写的类完全融合互补,没有任何差别,可用作快速建立强大高效的本地应用环境,同时可充分利用现有代码资源。
搭建之星
原名“发烧积木”属于搭建式的编程工具,完全可视化编程,有各种各样的构件,用拖放的方式拼成程式的流程。
特点:1安装简单、迅速,纯中文界面。构件丰富,设计过程直观、自由;无需掌握电脑语言,所有编程构件化、命令化、可视化。2交互式开发,只需要四种类型的“命令”,便可建立各种构件之间的联系;象搭积木一样简单,并可快速的搭建出具有专业水平的软件作品。3微解释执行,命令解释量小,执行速度快。可以和编译后的可执行文件相媲美。
基本功能:多媒体软件制作,支持多种声音、动画、图像、视频文件格式。有关教学构件,平面直角坐标系、表达式、变量组、函数图像、函数列表、树形浏览等;另外还新了动态流程图、浏览器构件、软件服务号等。提供打包工具,使您即刻将自制软件安装到其它机器上运行;自动对开发项目加密;使您的项目,在未经授权下,别人无法“浏览、修改”项目的构件关系与搭建方法。
汉语编程
它的发展早于 1993 年,看起来像Forth,“汉语编程”是中国人自己研发的完全以汉语为描述语言的计算机程序设计语言,它完全具有中国自主知识产权。作为一种计算机语言,它和现在流行的大部分计算机语言具有一些共同的特点,都是人机对话必须的工具语言。但该语言绝非曾流行过的任何一种计算机语言的简单汉化,或是为某种软件制造一个中文环境。这是一个完全由中国人自行开发,由中国人自我掌握全部源代码,从形式到内容全面符合中国人的思维方式,使用汉文字表达的面向对象、面向问题计算机程序设计语言。“汉语编程”具有自成平台、面向对象、面向问题、所见即所得、高度安全性、强大的繁衍功能、高度兼容性以及资源占用少、速度快等特点,开辟了计算机语言发展的新纪元。
雅奇MIS
无代码编程的领先者。
该软件采用“可视化语言”,实现了软件开发的“无代码图示编程”。任何人只要会打字,就能在30分钟内学会编程。可视化的无代码编程,使开发效率提高百倍。1小时完成的开发,相当于代码编程方式 2个月的工作量总和。“窗体、报表、计算”等各种功能设计,可达到“秒级”的设计效率。适合于普通办公人员开发“财务、人事、工资、进销存”等各行各业的管理信息系统。
易乐谷
“易乐谷ELOGO”是一个以LOGO语言语法为基本语法规则,易语言中文化为实现目标,以流程图为教学辅助,提供幼儿园、小学、退休人员及小学教学师作为入门级学习编程的一种简单工具。本程序由大连大有吴涛易语言软件开发有限公司向幼儿园、小学校、教师、退休人员等编程爱好入门者提供。
本程序使用易语言编程,用易语言实现了一种新的解释型的中文编程语言工具,在易语言中有丰富的图形组件、动画组件,多媒体命令、网络功能、3D支持库,目前这些功能已在易乐谷中体现,大家在学习“易乐谷ELOGO”的同时,也可以学会这些多媒体支持库的应用方法。“易乐谷ELOGO”与易语言的类似地方在于:同样都是中文编程,语法名称等同易语言的风格;不同地方在于:更加符合自然语言,让小学生们更易于理解,并且更利于小学教师的教学工作。
创新LOGO
CX-LOGO语言是一种结构化程序设计语言。它是交互式的,为少年儿童提供了良好的编程环境;它是模块化的,便于程序的修改与扩充;它是过程化的,包含了过程、参数、变量等重要概念,并允许递归调用;它有丰富的数据结构类型,有生动的图形处理功能。
CX-LOGO语言独创的流程图工作方式和过程库的建立,可方便的使用“搭积木”的方法,构建“知识”,使学习更容易、 *** 作更简便,学生只需简单的学习就可以 *** 作。
CX-LOGO语言不仅具备多种优秀程序设计语言的优点,而且更接近自然语言,生动有趣,简单易学,它能用直观的运动来体现编程的结果,让少年儿童在游戏中进行思考,在趣味中学习,深受少年儿童的欢迎。通过CX-LOGO语言的教学,以学习一种“玩具”为出发点,可以培养学生学习计算机的兴趣,使他们初步了解计算机是如何工作的,为他们今后学习其他高级程序语言设计铺设道路
CX-LOGO语言是专为我国少年儿童开发的创新平台,孩子们可以在电脑上指挥七色瓢虫移动、转向、行走、发光、响应外界刺激等。这些具有创造性的学习工具所倡导的“做中学”的学习理念,非常适合课堂教学,极大地激发了孩子们学习的兴趣。
学习编程,从何入手
如果您想学习编程,却又不知从何入手,那么您不妨看看下面的几种学习方案,可能会给您一些启示吧!
==============================================
VB方案一 Basic语言 & Visual Basic
优点
(1)Basic 简单易学,很容易上手。
(2)Visual Basic 提供了强大的可视化编程能力,可以让你轻松地做出漂亮的程序。
(3)众多的控件让编程变得象垒积木一样简单。
(4)Visual Basic 的全部汉化让我们这些见了English就头大的人喜不自禁。
缺点
(1)Visual Basic 不是真正的面向对象的开发文具。
(2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限。
(3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码。它需要一个动态链接库去解释执行,这使得Visual Basic 的编译速度大大变慢。 (Visual Basic 5以及以前的版本产生的代码是伪代码,Visual Basic 6 编译出来的代码是真正的可执行代码。)
综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人都可以在一个比较短的时间里学会vB编程,并用VB 做出自己的作品。对于那些把编程当做游戏的朋友来说,VB 是您最佳的选择。
Basic/Visual Basic简介
==============================================
Delphi方案二 Pascal语言 & Delphi
优点
(1)Pascal语言结构严谨,可以很好地培养一个人的编程思想。
(2)Delphi是一门真正的面向对象的开发工具,并且是完全的可视化。
(3)Delphi使用了真编译,可以让你的代码编译成为可执行的文件,而且编译速度非常快。
(4)Delphi具有强大的数据库开发能力,可以让你轻松地开发数据库。
缺点
Delphi几乎可以说是完美的,只是Pascal语言的过于严谨让人感觉有点烦。
综述: 方案二比较适合那些具有一定编程基础并且学过Pascal语言的朋友。
Pascal语言简介
Delphi简介
==============================================
方案三 C语言 & Visual C++
优点
(1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。
(2)微软的MFC库博大精深,学会它可以让随心所欲地进行编程。
(3)VC是微软制作的产品,与 *** 作系统的结合更加紧密。
缺点
对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习起来会有不小的困难。
综述: VC是程序员用的东西。如果你是一个永不满足的人,而且可以在编程上投入很大的精力和时间,那么学习VC你一定不会后悔的。
C语言简介
==============================================
C++方案四 C++语言 & C++ Builder
优点
(1)C++语言的优点全部得以继承。
(2)完全的可视化。
(3)极强的兼容性,支持OWL、VCL和MFC三大类库。
(4)编译速度非常快。
缺点
由于推出的时间太短,关于它的各种资料还不太多。
综述:我认为C++ Builder 是最好的编程工具。它既保持了C++语言编程的优点,又做到了完全的可视化。
C语言简介
==============================================
方案五 SQL语言 & Power Builder
对于一些传统的数据开发人员来说,Foxpro系列也许让他们感到更加熟悉。但是对于初学者来说,PowerBuilder也许是最好的数据库开发工具。各种各样的控件,功能强大的PowerBuilder语言都会帮助你开发出自己的数据库应用程序。
[NextPage]
JSP简介
JAVA语言在Sun正式发布JSP(Java Server Pages)之后,这种新的Web应用开发技术很快引起了人们的关注。JSP为创建高度动态的Web应用提供了一个独特的开发环境。按照 Sun 的说法,JSP能够适应市场上包括Apache WebServer 、IIS40在内的85%的服务器产品。
JSP与ASP的简单比较
JSP与Microsoft的ASP技术非常相似。两者都提供在HTML代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。在ASP或JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只依赖于Web服务器,而ASP和JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。ASP和JSP都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。
ASP的编程语言是VBScript之类的脚本语言,JSP使用的是Java,这是两者最明显的区别。
此外,ASP与JSP还有一个更为本质的区别:两种语言引擎用完全不同的方式处理页面中嵌入的程序代码。在ASP下,VBScript代码被ASP引擎解释执行;在JSP下,代码被编译成Servlet并由Java虚拟机执行,这种编译 *** 作仅在对JSP页面的第一次请求时发生。
运行环境
执行 JSP 代码需要在服务器上安装 JSP 引擎。此处我们使用的是 Sun 的 JavaServer Web Development Kit ( JSWDK )。为便于学习,这个软件包提供了大量可供修改的示例。安装 JSWDK 之后,只需执行 startserver 命令即可启动服务器。在默认配置下服务器在端口 8080 监听,使用 >
① 单片机编程,汇编语言
A中数据进行开平方,如下即可:
;
MOV R2, #255
LP1:
INC R2
SETB C
SUBB A, R2
JC EXIT
SUBB A, R2
JNC LP1
EXIT:
MOV A, R2
RET
;应用《减奇数法》来开平方。
② 单片机编程,求程序(用汇编语言)
汇编语言针对不同单片机不一样,怎么给你编?用C语言通用,其实真的很简单,主要是硬件设计
③ 求单片机课程设计 用汇编语言设计计数器(要求从0~9999,在数码管上显示)!!!!!!!!!!!!!
单片机课程设计报告
题 目 计时器设计
班 级 电 信 093
学 号 090301334
姓 名 周 剑
时 间 20101220
成 绩
指导教师 石巧云
目录
一、 前言………………………………………………………………1
单片机的应用介绍…………………………………………………1
二、 课程设计的目的和要求…………………………………………2
(一)课程设计的目的…………………………………………… 2
(二)课程设计的基本要求……………………………………… 3
三、 总体设计…………………………………………………………3
(一)工作原理…………………………………………………… 3
(二)硬件总体设计……………………………………………… 4
(三)软件总体设计……………………………………………… 5
四、综合调试………………………………………………………… 7
(一)keil调试 …………………………………………………… 8
(二)Proteus调试………………………………………………… 9
五、结束语…………………………………………………………… 9
六、参考文献 …………………………………………………………10
前言
单片机的应用介绍
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导d的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用单片机的应用介绍
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导d的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应
智能化控制的科学家、工程师。
与智能化控制的科学家、工程师。
单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:
(1在智能仪器仪表上的应用
(2在工业控制中的应用
(3在家用电器中的应用
(4在计算机网络和通信领域中的应用
(5单片机在医用设备领域中的应用
(6在各种大型电器中的模块化应用
此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。
二、 课程设计的目的和要求
(一)课程设计的目的
1. 进一步熟悉和掌握8051单片机的结构及工作原理。
2. 掌握单片机的接口技术及相关外围芯片的外特性,控制方法
3. 通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解表关电路参数的计算方法。
4. 通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5. 通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应打下基础。
(二)课程设计的基本要求
用AT89C51 单片机的定时/计数器T0产生一秒的定时时间,作为秒计数时间,但一秒产生时,秒计数加1,秒计数加到60时,自动从0开始。单片机晶振频率为12MHz。
二、 总体设计
(一) 工作原理
LED显示器的结构与原理
1、结构种类
七段LED显示器(数码管)系发光器件的一种。常用的LED发光器件有两类:数码管和点阵。数码管内部有七个条形发光二极管和一个小圆点发光二极管组成,根据各管的亮暗组成字符。常见数码管有10根管脚。管脚排列如下图(a)所示。其中COM为公共端,根据内部发光二极管的接线形式可分为共阴极和共阳极两种。如下图(b)(c)所示,使用时,共阴极数码管公共端接地,共阳极数码管公共端接电源。发光二极管需5~10mA的驱动电流才能正常发光,一般需加限流电阻控制电流的大小。
2、显示原理
LED数码管的a~g七个发光二极管。加正电压的发光加零电压的不能发光,不同亮暗的组合能形成不同的字符,这种组合称为字型码。共阳极和共阴极的字型码是不同的,如下图所示。
LED字符显示代码表
显示 段符号 十六进制代码
dp g f e d c b a 共阴极 共阳极
0 0 0 1 1 1 1 1 1 3FH C0H
1 0 0 0 0 0 1 1 0 06H F9H
2 0 1 0 1 1 0 1 1 5BH A4H
3 0 1 0 0 1 1 1 1 4FH B0H
4 0 1 1 0 0 1 1 0 66H 99H
5 0 1 1 0 1 1 0 1 6DH 92H
6 0 1 1 1 1 1 0 1 7DH 82H
7 0 0 0 0 0 1 1 1 07H F8H
8 0 1 1 1 1 1 1 1 7FH 80H
9 0 1 1 0 1 1 1 1 6FH 90H
(二) 硬件总体设计
1、主要元器件选择
主要元器件选用型号和数量如下:
1个AT89C51(单片机) 1个CRYSTAL(晶振) 2个CAP(电容)
3个RES(电阻) 2个7SEG-COM-CATHOD(共阴极数码管)
1个CAP-ELEC(电解电容)
2、系统板上硬件连线
(1. 把“单片机系统”区域中的P00/AD0-P07/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P00/AD0对应着a,P01/AD1对应着b,……,P07/AD7对应着h。
(2. 把“单片机系统”区域中的P20/A8-P27/A15端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P20/A8对应着a,P21/A9对应着b,……,P27/A15对应着h。
3、计时器电原理图
(三)软件总体设计
1、程序设计内容
(1在设计过程中我们用一个存储单元作为秒计数单元,当一秒钟到来时,就让秒计数单元加1,当秒计数达到60时,就自动返回到0,从新秒计数。
(2对于秒计数单元中的数据要把它十位数和个数分开,方法仍采用对10整除和对10求余。
(3在数码上显示,仍通过查表的方式完成。
(4一秒时间的产生在这里我们采用软件精确延时的方法来完成,经过精确计算得到1秒时间为1002秒。
2、延时1秒子程序
DELY1S: MOV R5,#100
D2: MOV R6,#20
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
DJNZ R5,D2
RET
3、程序流程图
4、汇编源程序设计
Second EQU 30H
ORG 0
START: MOV Second,#00H ;设置显示初值为00
NEXT: MOV A,Second
MOV B,#10
DIV AB ;十位数存于A中,个位数存于B中
MOV DPTR,#TABLE ;字型码地址送DPTR
MOVC A,@A+DPTR ;查十位字型码
MOV P1,A ;送P1口显示
MOV A,B
MOVC A,@A+DPTR ;查个位字型码
MOV P2,A ;送P2口显示
LCALL DELY1S ;调用延时1秒子程序DELY1S
INC Second ;显示值加1
MOV A,Second
CJNE A,#90,NEXT ;显示值不为90转到NEXT执行
LJMP START ;返回到主程序
DELY1S: MOV R5,#100 ;1S延时子程序
D2: MOV R6,#20
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
DJNZ R5,D2
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;共阴数码管字型码
END
四、综合调试
(一)Keil调试
程序调试完成图
(二)Proteus调试
五、结束语
完成情况:经过两个星期的努力,我们一组成员终于完成了秒表控制方案的设计,主要是用AT89C51单片机实现0-99秒计时器控制方案。本设计还包含数码管显示部分,可直接显示时间可方便观察。通过这次课程设计,使我得到了一次用专业知识和专业技能去分析问题、解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及用汇编语言设计程序的思路技巧等方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。
六、参考文献
[1] 江力主编,单片机原理与应用技术,清华大学出版社,2008年4月第6次印刷
[2]蔡骏主编,单片机实验指导教程,安徽大学出版社,2008年7月第一次印刷
[3] //51c51/51test/cc411
④ 单片机课程设计(用汇编语言)
51单片机的,交通灯设计,用汇编写程序,可以
⑤ 51单片机编程题,用汇编语言怎么做
在8051单片机的时钟频率为6MHz,那么定时器的计数脉冲周期就是 2uS;
it CP=P1^0;
void Timer0_init()
{
TMOD |=0x01; //T0定时器,方式1,采回用16位定时器
TH0 = (65536-500)/256; //定时器装初答值500, 即 1000uS 中断一次
TL0 = (65536-500)%256;
EA=1; ET0=1; TR0=1;
}
void timer0() interrupt 1
{
TH0 = (65536-500)/256; //定时器装初值500, 1mS 中断一次
TL0 = (65536-500)%256;
CP=~CP; //改变脉冲信号的输出状态
}
void main()
{
Timer0_init();
CP=0;
while(1) { }
}
汇编语言,才看到,算了,你别人的回答吧
⑥ 求单片机课程设计 用汇编语言设计计数器(要求从0~9999,
求单片机课程设计 用汇编语言设计计数器(要求从0~9999,
片机课程设计报告
题 目 计时器设计
班 级 电 信 093
学 号 090301334
姓 名 周 剑
时 间 20101220
成 绩
指导教师 石巧云
目录
一、前言………………………………………………………………1
单片机的应用介绍…………………………………………………1
二、课程设计的目的和要求…………………………………………2
(一)课程设计的目的…………………………………………… 2
(二)课程设计的基本要求……………………………………… 3
三、总体设计…………………………………………………………3
(一)工作原理…………………………………………………… 3
(二)硬件总体设计……………………………………………… 4
(三)软件总体设计……………………………………………… 5
四、综合调试………………………………………………………… 7
(一)keil调试 …………………………………………………… 8
(二)Proteus调试………………………………………………… 9
五、结束语…………………………………………………………… 9
六、参考文献 …………………………………………………………10
前言
单片机的应用介绍
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导d的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用单片机的应用介绍
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导d的导航装置,
⑦ 单片机编程(汇编语言)
子程序如下:
MIDL:
MOV A, R1
CLR C
SUBB A, R2 ;R1-R2
JNC BIGR1
MOV A, R2 ;交换R1R2的内容
XCH A, R1
MOV R2, A ;较小值存到R2
BIGR1:
MOV A, R2 ;取出较小值
CLR C
SUBB A, R3 ;R2-R3
JNC BIGR2
MOV A, R3 ;交换R2R3的内容
XCH A, R2 ;较大者存到R2
MOV R3, A ;最小值存到R3
BIGR2:
MOV A, R1
CLR C
SUBB A, R2 ;R1-R2,比较两个较大的值
JNC LITR2
MOV A, R1 ;交换R1R2的内容
XCH A, R2
MOV R1, A
LITR2:
RET
⑧ 单片机原理与应用课程设计 要汇编语言的 多谢
无法贴上来,给邮箱发给你
⑨ 单片机交通灯课程设计程序汇编语言和C语言
我这有个交通灯的程序,留下邮箱吧!
⑩ 谁有用MCS51单片机设计五层电梯的程序(汇编语言或C语言)
舍近求远,这个用C不烦死你,本来就是汇编的事,你用C也得内嵌语句。
这是汇编程序,原理图照课本上画就行~ CODE SEGMENT ASSUME CS: CODE NEW_INT: ;接收字符的中断处理程序 STI ;CPU开中断 MOV DX , 3F8H ;接收字符 IN AL , DX MOV DL , AL ;显示接收字符 MOV AH , 2 INT 21H CMP DL , 0DH ;判断是否为回车 JNZ L2 ;不是,转L2处 MOV DL , 0AH ;若是,加显示一个换行符 MOV AH , 2 INT 21H L2: MOV AL , 20H ;发中断结束命令(EOI) OUT 20H , AL IRET START: ;主程序部分 MOV AH , 35H MOV AL , 0CH INT 21H ;读取原0CH号中断服务程序的地址 PUSH BX PUSH ES ;以上地址入栈保存(以便在程序退出时再恢复中断矢量表中的内容) MOV AX , CS MOV DS , AX MOV DX , OFFSET NEW_INT MOV AH , 25H MOV AL , 0CH INT 21H ;修改中断矢量表,将NET_INT位置登记为0CH号中断服务程序的地址 ;以下初始化8250 MOV DX , 3FBH ;指向线路控制寄存器 MOV AL , 80H ;位7置1 OUT DX , AL ;发送此字节 MOV DX , 3F9H ;指向波特率除数的高字节 MOV AL , 0 ; 1200 BPS对应的高字节 OUT DX , AL ;发送此字节 DEC DX ;指向波特率除数的低字节 MOV AL , 60H ; 1200 BPS对应的低字节 OUT DX , AL ;发送此字节 MOV AL , 1BH ;数据长度为8位 , 1个奇偶校验位 , 偶校验 , 1个停止位 MOV DX , 3FBH ;指向线路控制寄存器 OUT DX , AL ;发送此字节 MOV DX , 3FCH ;设置MODEM控制寄存器 MOV AL , 0BH ;允许8250发中断 OUT DX , AL MOV DX , 3F9H ;指向中断允许寄存器 MOV AL , 1 ;允许数据接收准备好中断 OUT DX , AL ;发送此字节 CLI ;关中断,以便对中断控制器8259A进行 *** 作 IN AL , 21H ;读取中断屏蔽寄存器的内容 AND AL , 0EFH ;将COM1中断(即IRQ4引脚)的对应位置0,允许中断。 OUT 21H , AL ;写入中断控制器8259A中 STI ;开中断 L1: ; 主程序循环,等待收到字符的中断发生。 MOV AH , 0 INT 16H ;读取键盘字符 CMP AL , 03 ;比较是否为CTRL-C键 JNZ L1 ;若不是,继续循环 EXIT: ;退出处理 MOV AH , 25H MOV AL , 0CH POP DS POP DX INT 21H ;恢复中断矢量表中0CH号中断服务程序的原地址。 MOV AH , 4CH INT 21H ;返回DOS CODE ENDS END START
麻烦采纳,谢谢!
以上就是关于汇编 Y=A*B-C全部的内容,包括:汇编 Y=A*B-C、汇编语言中伪指令assume有什么实际意义吗、汇编语言编程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)