单片机一条语句只在执行的时候执行一次完之后,只保持该值一个指令周期吗? 51单片机执行一条语句的时间是多久

作者&投稿:爱杭 (若有异议请与网页底部的电邮联系)

这是C语言的程序,对于单片机的主程序必须有while(1)语句,应该是由while(1)语句构成主循环结构。而你这个主程序只有一个语句,LED=0; 那就必须保留while(1); 一行,这是一个无限循环语句,单片机才能在这个语句上无限循环下去,相当于停止在这一行上。如果没有这一行,编译时就当成子程序,执行完点灯一句要返回,可无处返回,造成错误,程序会混乱。有一个关键问题你没理解,就是单片机执行指令是永远不会停止的,虽然你只写一条语句,但是单片机执行完却不会停止的,还要继续执行,因没有程序了,就会执行ROM中乱码,造成了小灯闪亮。



51单片机中执行一条乘法指令或者除法指令需要多少个机器周期?~

一条乘法指令或者一条除法指令都需要 4 个机器周期。
51单片机的功能:
8位CPU·4kbytes程序存储器(ROM) (52为8K)
128bytes的数据存储器(RAM) (52有256bytes的RAM)
32条I/O口线·111条指令,大部分为单字节指令
21个专用寄存器
2个可编程定时/计数器·5个中断源,2个优先级(52有6个)
一个全双工串行通信口
外部数据存储器寻址空间为64kB
外部程序存储器寻址空间为64kB
逻辑操作位寻址功能·双列直插40PinDIP封装
单一+5V电源供电
CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;
RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;
ROM:用以存放程序、一些原始数据和表格;
I/O口:四个8位并行I/O口,既可用作输入,也可用作输出
T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;
五个中断源的中断控制系统;
一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;
片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最佳振荡频率为6M-12M。

  51单片机执行一条语句的时间与指令条件有关。
  假设晶振为12MHz,则指令周期为1uS,51分为1指令周期,2指令周期和4指令周期,1指令周期执行为1uS,2指令周期执行为2uS,4指令周期执行为4uS。

  单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
  单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
  单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等 。

以下叙述中错误的是( )。
答:【答案】:D 并不是源程序中的所有行都参加编译。在条件编译形式下,相关内容只在满足一定条件时才进行编译。选项D)中的非执行语句不在其范围内。

假期让你秒变Ph高手
答:提高了普通Python程序的清晰度。大多数人在一段时间后就学 会并喜欢上这个功能。 由于没有开始/结束括号,因此解析器感知的分组与人类读者之 间不会存在分歧。偶尔C程序员会遇到像这样的代码片段: 如果条件为真,则只执行x++语句,但缩进会使你认为情况并 ...

生活中如何培养双赢思维?
答:双赢思维,这个词的流行,恐怕跟《高效能人士的七个习惯》这本书的大热有关系。它很好理解,却不是那么地好应用。 要想知道怎么用好双赢思维,需要先分析用好它的卡点在哪里。 比如说,当你和同事为了本年度唯一一个晋升名额较劲的时候,当你想要去找领导或HR谈加薪却不得要领的时候,当老奸巨猾的同事把项目失败的...

for循环中break与continue的区别
答:在for循环中break与continue的区别如下:break用于完全结束一个循环,跳出循环体执行循环后面的语句;而continue是跳过当次循环中剩下的语句,执行下一次循环。简单点说就是break完全结束循环,continue终止本次循环。下面举个小例子:var str = "hello";for (var item of str){ if(item ==="l"){ ...

关于思念一个人的句子
答:二十六、看不见你的时候,思念像座山压在胸口;看得见你的时候,快乐像条河涌进心头;让山和水来见证我对你的思念。 二十七、我会乱想,我会思念,我会悲伤,我会难过,我会心痛,你忘了我只是个普通的人。 二十八、思念,是梦醒时的迷茫,似蓝天下流动的云。 关于思念一个人的伤心句子 1、缘如覆水泛滥,梦依然疼痛...

简述解释和编译的区别
答:简述解释和编译的区别如下:1、与计算机的交流方式不同 解释程序不产生目标代码,它逐条地取出源程序中的语句,边解释,边执行;解释器把源代码文件边解释成机器语言边交给CPU执行。编译是将源程序翻译成可执行的目标代码,执行可执行程序文件,翻译与执行是分开的。2、运行环境不同 解释程序可跨平台使用,...

写一个带有连续动作的句子
答:带有连续动作的句子有这些:1、只见一个男同学走上台来,不声不响地摊开一卷白纸,提起饱蘸浓墨的毛笔,略微沉思一下,龙飞凤舞地画起来。2、只见他看完卡片后,用手蒙住嘴巴笑了起来。3、只见,他伸出一支后,捂住胸口,然后一挥而过。4、游戏开始了,张老师先抖一抖身体,假装很冷,接着她穿起...

break语句只能用于什么语句
答:break语句只能用在循环体内和switch语句体内。只能在循环体内和swi tch语句体内使用break语句,当break出现在循环体的switch语句体内时,其作用只是跳出该switch语句体,并不能中止循环体的执行。语句不只在switch;语句中中使用,它是用来跳出循环,防止死循环的,那么在if语句中,我们用break;语句,那也是...

夸一个人工作努力的句子大全
答:1、该员工在学习上,目标明确,刻苦勤奋,成绩优良,学好专业课同时高度重视基础课程跟课外的学习,使自己全面发展,培养合理的知识结。 2、懒汉是最热衷于把自己弄得筋疲力尽的人,不过不是在工作上,而是在欢乐上。 3、一个人也许会相信许多废话,却依然能以一种合理而快乐的方式安排他的日常工作。 4、倾材足以聚人...

Java中的for语句的用法
答:其中:initialization是for循环的初始部分,它用来设置循环控制变量,并制初值;condition是条件判断部分,由该条件判断的真假决定for循环合时推出;increment是增量部分,每执行一次循环后,由增量部分决定循环控制的变化情况;(这三部分必须用分号隔开)statement称为for循环的循环体,它可以是一条语句也可以是...