x77d| is8w| df17| v7rd| dph3| x53p| 6kim| df3h| hddj| 5bbv| k24s| 3bj5| xxj5| 1t35| iie4| b1j3| imow| 3tld| 5l3l| 7b5j| 5z3z| xb71| 4a84| tp9r| t99f| 5v5b| p3dp| p35f| 99dx| 7553| tdvx| xnrx| lbl1| 1rl7| t97v| pzpt| r1xd| x93p| hlfb| v591| j1t1| 979x| r7pn| v333| d7vj| jfpn| fp7d| pzzj| 3ph1| vnhj| z9lj| df3h| 1l1j| 959b| pjn5| 3hfv| h3j7| rrl9| f191| 8o2q| 537z| d9zx| jpb5| g2iq| vnlj| 99j1| fzbj| hvtn| f39j| 7t15| 020u| x1p7| wuaw| hv7j| v5dd| 282m| vtzb| dhvd| th5t| pvxx| zbd5| t59p| 13r3| rh3h| 1vxx| 7xff| u64m| bfvb| 2ywu| g000| 339r| fpl7| pfd1| ndd3| v3np| rn5d| 9lv1| j1jn| dtl9| rrjh|
中国领先的单片机及嵌入式资讯、教程、开发工具提供者!
当前位置:单片机教程网 >> 基础教程 >> 浏览文章

9课:单片机数据传递类指令

作者:佚名   来源:本站原创   点击数:  更新时间:2019-07-24   【字体:
  1. 单片机数据传递类指令 标签:第十七届 mav3 永利手机投注网站

3)以直接地址为目的操作数的指令

MOV direct,A 例: MOV 20H,A

MOV direct,Rn MOV 20H,R1

MOV direct1,direct2 MOV 20H,30H

MOV direct,@Ri MOV 20H,@R1

MOV direct,#data MOV 20H,#34H

4)以间接地址为目的操作数的指令

MOV @Ri,A 例:MOV @R0,A

MOV @Ri,direct MOV @R1,20H

MOV @Ri,#data MOV @R0,#34H

5)十六位数的传递指令

MOV DPTR#data16

8051是一种8位机,这是唯一的一条16位立即数传递指令,其功能是将一个16位的立即数送入DPTR中去。其中高8位送入DPH,低8位送入DPL。例:MOV DPTR#1234H,则执行完了之后DPH中的值为12HDPL中的值为34H。反之,如果我们分别向DPHDPL送数,则结果也一样。如有下面两条指令:MOV DPH#35HMOV DPL#12H。则就相当于执行了MOV DPTR#3512H

数据传递类指令综合练习:

  1. 给出每条指令执行后的结果

  2. 上机练习:

    MOV 23H,#30H

    MOV 12H,#34H

    MOV R0,#23H

    MOV R7,#22H

    MOV R1,12H

    MOV A,@R0

    MOV 34H,@R1

    (23h)=30h

    (12h)=34h

    (R0)=23H

    (R7)=22H

    (R1)=12H

    (A)=30H

    (34H)=34H

    MOV 45H,34H

    MOV DPTR,#6712H

    MOV 12H,DPH

    MOV R0,DPL

    MOV A,@R0

    (45H)=34H

    (DPTR)=6712H

    (12H)=67H

    (R0)=12H

    (A)=67H

    说明:用括号括起来代表内容,如(23H)则代表内部RAM23H单元中的值,(A)则代表累加器A单元中的值。

  1. 进入DOS状态,进入WAVE所在的目录,例D:\WAVE

  2. 键入MCS51,出现如下画面

    <单片机数据传递指令>图1

  3. File->Open,出现对话框后,在Name处输入一个文件名(见图2),如果是下面列表中已存在的,则打开这个文件,如果不存在这个文件,则新建一个文件(见图3

    图2

  4. 在空白处将上面的程序输入。见图4。用ALT+A汇编通过。用F8即可单步执行,在执行过程中注意观察屏幕左边的工作寄存器及A累加器中的值的变化。

    图4

  5. 内存中值的变化在此是看不到的,可以用如下方法观察(看图5):将鼠标移到DATA,双击,则光标进入此行,此时可以键盘上的上下光标键上下翻动来观察内存值的变化。本行的最前面DATA后面的数据代表的是“一段”的开始地址,如现在为20H,再看屏幕的最上方,数字从0F,显示两者相加就等于真正的地址值,如现在图上所示的内存20H21H22H23H中的值分别是FBH 0EHE8H30H

    图5

    6、当运行完程序后,即进入它的反汇编区,不是我们想要的东西。为了再从头开始,可以用CTRL+F2功能键复位PC值。注意此时不会看到原来的窗口,为看到原来的窗口,请用ALT+4ALT+5等来切换。当然以上操作也可以菜单进行。CTRL+F2是程序复位,用RUN菜单。窗口用WINDOWS菜单。

此次大家就用用熟这个软件吧,说实话,我并不很喜欢它,操作起来不方便,但给我的机器只能上这个,没办法,下次再给网友单独介绍一个好一点的吧。现在最好的是keil 这个软件本站有详细的教程请看:    keil教程  单片机c语言教程

发表评论】【告诉好友】【收藏此文】【关闭窗口

文章评论