|
|
| | -文章搜索 - 最新文章 - | |
A51 3.6.6 表达式(Expressions) |
| 发布时间:2006年7月20日 点击次数:760 |
| 来源: 作者: |
表达式有一些属性,将在下面说明。 表达式的存储器类型(Expression Classes) 基于使用的操作数,表达式被分配一个存储器类型。下面是可以分配给表达式的存储器类型。
典型的,表达式被赋予NUMBER类型,因为它们仅由数值型操作数组成。我们可以使用一个类操作数给一个表达式赋予一种存储器类型。一个地址符号值被自动分配其被定义的段的存储器类型。当一个值具有一种存储器类型时,表达式的构成有几条规则:
这就意味着一个存储器类型数值(即一个地址符号)加或减一个数字(或者一个数字加一个存储器类型数值)将得出一个具有存储器类型的数值。 例子
NUMBER类型的表达式几乎可以用在任何地方。具有存储器类型的表达式只能用在那种类型是正确的存储器类型的地方。 可重定位的表达式(Relocatable Expressions,又译作浮动表达式) 可重定位的表达式之所以这样命名,是因为它们含有一个到一个可重定位的或外部的符号的引用。这种类型的表达式只能被汇编器计算一部分,因为汇编器不知道的可重定位的段的最终位置。最终的计算由连接器完成。 一个可重定位的表达式通常只包含一个可重定位的符号,但是它还可以包含其它的操作数和操作符。我们可以通过加或减一个常数来修改一个可重定位的符号。 正确的可重定位表达式的例子
有两种基本类型的可重定位的表达式:简单的可重定位的表达式和扩展的可重定位的表达式。 简单的可重定位的表达式(Simple Relocatable Expressions) 这类表达式包含在可重定位的段中定义的符号。段和外部符号不允许出现在简单可重定位的表达式中。 简单可重定位表达式可以用在以下四种位置:
简单可重定位表达式的例子
简单可重定位表达式的不正确形式
扩展的可重定位的表达式(Extended Relocatable Expressions) 这种表达式的规则与简单可重定位表达式的规则基本相同。段和外部符号可以出现在扩展的可重定位表达式中。扩展的可重定位表达式只可以用在生成代码为操作数的语句中;这些是:
扩展的可重定位表达式的例子 REL1 + ABS1 * 10 扩展的可重定位表达式的不正确的例子
表达式的例子
背景色为黄绿色的伪指令和选项只适用于AX51和A251。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
[单片机] 相关文章: 用高效型振荡器为8051单片机实现高速串行通信的时钟配置简介: 引言 当今许多实时监测系统与通信设备领域中,经常需要进行远距离的数据传送。为此,如何实现高速、可靠及低成本的数据传输是作为前级机或发送级的8051单片机迫切需要解决的新技术。据此,我们采用由Dallas Semiconductor公司产的芯片DSl075--Econ oscillator(高效型振荡器)为8051系列的DS87C520高速型单片机提供时钟的配置设计方案,实现单片机串行通信的高速波特率。 Econ o...... 利用USB UART桥接器实现单片机在线编程 USB接口芯片SL811HS在51单片机系统中的应用 一种C51单片机并行口扩展设计及应用 RS-485总线型通讯系统应用 |
|
|
|