位置:51电子网 » 技术资料 » 单 片 机

单片机的内外部结构分析(三)

发布时间:2008/5/27 0:00:00 访问次数:449

http://www.hificat.com

一、延时程序分析

  上一次课中,我们已经知道,程序中的符号r7r6是代表了一个个的ram单元,是用来放一些数据的,下面我们再来看一下其它符号的含义。

 

delay: mov r7,#250   ;(6)

d1: mov r6,#250   ;(7)

d2: djnz r6,d2    ;(8)

djnz r7,d1   ;(9)    

ret        ;(10)

 

  1. mov:这是一条指令,意思是传递数据。说到传递,我们都很清楚,传东西要从一个人的手上传到另一个人的手上,也就是说要有一个接受者,一个传递者和一样东西。从指令mov r7#250中来分析,r7是一个接受者,250是被传递的数,传递者在这条指令中被省略了(注意:并不是每一条传递指令都会省的,事实上大部份数据传递指令都会有传递者)。它的意义也很明显:将数据250送到r7中去,因此执行完这条指令后,r7单元中的值就应当是250。在250前面有个#号,这又是什么意思呢?这个#就是用来说明250就是一个被传递的东西本身,而不是传递者。那么mov r6#250是什么意思,应当不用分析了吧。

  2. djnz:这是另一条指令,我们来看一下这条指令后面跟着的两个东西,一个是r6,一个是d2r6我们当然已知是什么了,查一下d2是什么。d2在本行的前面,我们已学过,这称之为标号。标号的用途是什么呢?就是给本行起一个名字。djnz指令的执行过程是这样的,它将其后面的第一个参数中的值减1,然后看一下,这个值是否等于0,如果等于0,就往下执行,如果不等于

    http://www.hificat.com

    一、延时程序分析

      上一次课中,我们已经知道,程序中的符号r7r6是代表了一个个的ram单元,是用来放一些数据的,下面我们再来看一下其它符号的含义。

     

    delay: mov r7,#250   ;(6)

    d1: mov r6,#250   ;(7)

    d2: djnz r6,d2    ;(8)

    djnz r7,d1   ;(9)    

    ret        ;(10)

     

    1. mov:这是一条指令,意思是传递数据。说到传递,我们都很清楚,传东西要从一个人的手上传到另一个人的手上,也就是说要有一个接受者,一个传递者和一样东西。从指令mov r7#250中来分析,r7是一个接受者,250是被传递的数,传递者在这条指令中被省略了(注意:并不是每一条传递指令都会省的,事实上大部份数据传递指令都会有传递者)。它的意义也很明显:将数据250送到r7中去,因此执行完这条指令后,r7单元中的值就应当是250。在250前面有个#号,这又是什么意思呢?这个#就是用来说明250就是一个被传递的东西本身,而不是传递者。那么mov r6#250是什么意思,应当不用分析了吧。

    2. djnz:这是另一条指令,我们来看一下这条指令后面跟着的两个东西,一个是r6,一个是d2r6我们当然已知是什么了,查一下d2是什么。d2在本行的前面,我们已学过,这称之为标号。标号的用途是什么呢?就是给本行起一个名字。djnz指令的执行过程是这样的,它将其后面的第一个参数中的值减1,然后看一下,这个值是否等于0,如果等于0,就往下执行,如果不等于

    相关IC型号
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!