单片机中某个指令的问题。

来源:百度知道 编辑:UC知道 时间:2024/06/08 19:51:53
mov P1,R1 这条指令的意思是不是"输出R1中的内容".?
它和mov A,R1,"把R1中内容存放入A"这条指令有什么不同?

我的意思是想问,什么时候的指令(哪些指令)是代表输出,什么时候的指令(哪些指令)的指令是代表存放?
MOV A,R1 不是指将R1中内容送入A吗,而A又是寄存器啊?为什么不能讲存放呢? 另外MOV P1,R1的话,不是将R1中内容送到P1口吗.而就像送佛送到西一样,送到P1门口了,肯定还要出去啊.所以是输出吧.

我学化学的,学校安排了微机课,不过没怎么听,不懂,望大家多帮忙.谢谢.

另外问下1楼,请问指令的功能是把XX内容送到XX寄存器或累加器,那送到寄存器等的话不是存放那到底有什么作用呢?

MOV 就是一条传送指令。
传送的目的地是接口,就是输出;
传送的发源地是接口,就是输入。

传送的目的地是某些特殊功能寄存器,就可以理解是进行某种设置;
传送的目的地是一般的存储单元,就可以理解是把数据保存到某个单元。

P0/P1/P2/P3代表着单片机的IO口,因此,向IO口送数可以算输出
A是累加器,严格意义上说不是存放,掉电就没有了的。送入A以便于进行其它操作。

您需要进一步了解单片机的硬件结构。就会知道并没有“指令代表输出/存放”这种说法。

51单片机中累加器A具有运算功能,先送一个数进去再执行如ADD A,#01H这种加法运算,你放一个数进去,关闭电源就什么都没了,所以不是严格意义上的存储。而R1,R2之类的寄存器,本身不能做运算的。

您既然是学化学的,这些可以不用深究,所谓“术业有专攻”。

不存在什么输出与存放的概念
硬要说有的话,那就是直接操作IO口的代表输出,比方说你写的MOV P1,R1
其它的则代表存放。
看来你一点都不懂啊

你自己的理解是对的,你说的意思是对的,是人家专业的学得太专业了看不惯业余的!这两条指令都是数据传送指令,都是用MOV指导令嘛,是输出还是存放的话看你把目标操作数(就是要传送的数据)的放到哪,如果的放到单得机外那就是输出,如果是放到寄存器那就是把这个数先存起来!这个主要是你对硬件不了解才会产生这样的疑问