在51单片机中,需要使用命令将ACC的值写入A吗??本人初学者。谢谢。

作者&投稿:鞠轰 (若有异议请与网页底部的电邮联系)
在51单片机中,ACC八位数据发生变化,A 的值会立即发生变化吗?本人初学者。~

单片机,直接跳过汇编,学C吧,现在的芯片,RAM和ROM都大,编译器都可以完成一定的优化的

A和ACC的实质是一样的,对应地址都是0E0H,
只是汇编在使用时,在格式上取了两个名字。
你看看它们的使用方法,有的地方用A,有的地方用ACC,会发现有一定的规律。
当其要进行位表示时,必须用ACC,
比如要写成ACC.7,而不能写成A.7
但当其作为8位二进制数时,ACC和A都能用
但还是有区别
比如 INC ACC和INC A 都能用
还有PUSH ACC POP ACC也可以写成PUSH A和POP A
当然,我们学汇编时,它主要是讲了一个格式,可能书上只讲到PUSH ACC,没有讲到PUSH A,没讲到并不代表它不能用。

这是汇编指令才用到ACC和A,其实,就是一个累加器A,只是在不同的指令中写法不同。ACC是属于直接寻址指令,例如:MOV ACC , #10H ,这里的ACC是按物理E0H地址来寻址的,与MOV 0E0H , #10H 指令的寻址方式相同的,这指令编译后是3个字节。这指令的功能是把立即数送到累加器A中。
所以,这种写法很少。而通常都写成A,这是汇编指令中使用率最高的指令了,这是寄存器寻址。而且汇编指令中针对A 的指令也是最多的。
同样,用指令 MOV A , #10H,也是把立即数送到累加器A 中,可以编译后是两个字节。
回到你的提问上来:需要使用命令将ACC的值写入A吗?
那就是:MOV A , ACC,很显然是毫无意义的,就是把累加器的值再送回给自己,有意思吗?
但,ACC的写法还是有用的,对于累加器的8个位寻址时,需要这样写了
SETB ACC.1 ; 这是累加器A中第1位置1 , ACC.0是最低位
CLR ACC.0 ;这是累加器A中第0位清0, 就是最低位清0
如果写成: SETB A.1
CLR A.4
这就是错误了.

请帮忙在51系列单片机系统中,编写一个延时1ms的子程序。谢谢。。_百...
答:如下图所示。2、然后添加c文件,接下来输入代码,先输入一个头文件命令。3、然后,进行宏定义,代码如图所示。4、然后声明P1口,如下图所示。5、最后,将延时语句全部添加进去,代码按照图中所示的直接敲入即可。6、最后,点击编译,生成HEX文件就可以了,这样51单片机延时语句就完成了。

51单片机如何使用?
答:使用51单片机需要达到以下基本条件:1、至少要搭建一个最小系统;2、你需要编制一个51的控制程序;3、你需要将程序编译连接成HEX或BIN格式的代码并下载或烧录到51单片机。这样你就可以使用这款51单片机了。1单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来...

51单片机wr/rd脚怎么用的?
答:单片机自动发出写命令或读命令,使wr引脚变为低电平或使rd引脚变为低电平,控制芯片进行写操作或读操作。51单片机wr/rd脚,是P3.6P和3.7,是在扩展外部数据存储器时才用得到,现在的单片机,都不需要外部扩展数据存储器了,这两个脚的功能就用不上了。但这两个脚做I/O引脚来用。

51单片机汇编语言中xch.xchp是什么交换拍令?
答:这个没有的,就是普通的交换而已,常规指令哦,一般就是这样的 所以需要继续看看的。

单片机c语言编程
答:基于C语言的单片机编程单片机c语言编程是基于C语言的单片机编程。单片机的C语言采用C51编译器(简称C51)。高效的目标代码由C51产生的目标代码短,运行速度高,存储空间小,符合C语言的ANSI标准,生成的代码遵循Intel目标文件格式。可与汇编语言混合使用而且可与A51汇编语言PL/M51语言目标代码混合使用。 抢首赞 ...

51单片机中ACC怎么用??
答:所以在进栈和出栈的时候 不能用A 只能用Acc 有这么一说 累加器有A、ACC和E0H三种表示形式,分属两种不同的寻址方法,使用A时,为寄存器寻址,指令码为04H,使用ACC和E0H时,为直接寻址,指令码为05E0H INC A 是寄存器寻址 INC A 是单字节指令,转换成机器码是:04H,机器码中没有明确指出操作...

51单片机C语言中使用printf函数需要设置什么?
答:str,"ad result is:dmv \r",tp);str是个char型数组再调用你编写的串口发送字符串程序发送strvoid sentstr(uchar str){ while(1){ if(*str='\0')break;putbuffer(*str++);}}sentstr(str);51单片机中没有printf这个函数,你如果想用串口发送的话,要自己去写一个串口发送函数就可以了。

【51单片机系列】C51中的中断系统
答:C51中断系统是单片机中的关键组件,它如同生活中的应急机制,能快速响应突发状况,提升CPU的处理效率。理解它,就如同掌握了一把处理突发事件的钥匙。在89C51系列中,中断系统由中断源、中断响应和中断返回三大组件组成,共设有8个中断源,包括外部中断、定时器和串口,每种都有独特的功能和优先级划分,最...

51单片机可以用reg52.h的头文件吗
答:所谓“文件包含”是指在一个文件内将另外一个文件的内容全部包含进来。因为被包含的文件中的一些定义和命令使用的频率很高,几乎每个程序中都可能要用到,为了提高编程效率,减少编程人员的重得劳动,将这些定义和命令单独组成一个文件,如reg51.h,然后用#include<reg51.h>包含进来就可以了,这个就相当于工业上的标准...

51单片机中如何用C语言实现两个测量量的相加减
答:在51单片机中,使用C语言实现两个测量量的相加减是基本的编程操作。首先,设定两个测量到的数据分别为x1和x2。若要进行相加操作,总量x0可以通过以下表达式计算得出:x0 = x1 + x2。若要进行相减操作,总量x0则可以通过以下表达式得出:x0 = x1 - x2。