×

如何进行定位操作详细资料总结

消耗积分:1 | 格式:pdf | 大小:0.06 MB | 2019-04-23

分享资料个

  昨天在51单片机的课程上,老师说:

  单片机程序一般开头就是

  ORG 0000H

  AJMP MAIN

  ORG 0030H

  这个ORG什么作用呢?可以让接下来的代码在ORG指定的地址运行。以前就有接触ORG,不过一直有一个误区,把它当做是能让程序直接拷贝到指定地址。其实不是,先让我们来看看“汇编金手指”对它的解释:

  定位伪操作 ORG

  格式: ORG<数值表达式>

  功能: 该指令把位置计数器的值设置成表达式的值。

  把位置计数器置成后面的值,什么是位置计数器,是pc嘛?

  不是,来看下面一段来自《微机》里的解释:

  指定起始位置伪指令

  格式:ORG 表达式

  其中,ORG(origin)是操作码,不可省略。表达式给出偏移地址值,即ORG语句后的指令或数据以表达式给出的值作为起始的偏移地址。表达式必须是一个可计算得到的正整数,数值范围在0~65 535之间。

  ORG伪指令用来指出其后的程序段或数据块存放的起始地址的偏移量。汇编程序汇编时把语句中表达式的值作为起始地址,连续存放ORG语句之后的程序和数据,直到出现一个新的ORG指令。若省略ORG 语句,则从本段起始地址开始连续存放。

  在大多数情况下,不需要用ORG语句设置位置指针。由于段定义语句是段的起点,它的偏移地址为 0000H,以后每分配一个字节,位置指针自动加1,所以每条指令都有确定的偏移地址。只有程序要求改变这个位置指针时,才需要安排ORG语句。通常ORG语句可以出现在程序中任何位置上。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !