老古开发网首页
导航:老古开发网首页文章索引文章分类单片机→[A51 4.1.4 绝对段(Absolute Segments)]
| -文章搜索 - 最新文章 - |

A51 4.1.4 绝对段(Absolute Segments)

发布时间:2006年7月23日 点击次数:798
来源:   作者:
 
绝对段位于一个固定的存储地址中。使用伪指令CSEG,DSEG,XSEGISEG和BSEG可以创建绝对段。使用这些伪指令,我们可以把代码和数据定位在存储空间中的一个固定地址。当我们需要访问一个固定的存储器地址,或者当我们想把程序代码或常数放在一个固定的内存地址时,我们必须使用绝对段。参见伪指令CSEG,DSEG,ISEG,XSEG,ISEG获取更多有关定义绝对段的信息。

    复位后,8051微处理器开始从CODE地址0执行程序。Intel/Atmel WM 25的起始执行地址为FF0000。有些类型的程序代码必须被置于该地址。我们可以使用绝对段强制程序代码进入该地址。下面的例子被用在Cx51启动程序中,从复位地址转移到初始化代码的开始。

·    
·    
·    
  CSEG AT 0
RESET_VEC: LJMP STARTUP
·    
·    
·    

我们用CSEG AT 0伪指令放置在地址0000h的程序代码,实现一个到STARTUP标号的跳转。

    AX51和A251支持绝对段控制,以与A51兼容。AX51和A251把伪指令CSEG,DSEG,XSEG,ISEG和BSEG翻译为一个普通段伪指令。


欢迎进入老古论坛进行讨论
[单片机] 相关文章:
单片机C环境下位操作的实现方法
简介:
单片机C环境下位操作的实现方法 黑龙江工程学院 刘海成 C语言既有高级语言的各种特点,又可对硬件进行操作,并对进行结构化程序设计,用C语言编写的程序较容易移植,它们可生成简洁可靠的目标代码,在代码效率和代码执行速度上完全可以和汇编媲美。采用C语言进行单片机编程是嵌入式程序设计的发展趋势。但是,在嵌入式控制等领域,经常需要控制某一个二进制位,然而除了Keil C51等C环境外,很多单片机C环境都没有扩充对位变量定义的关键字,甚至单片机本身的硬件上也没有对单个位操作的汇编指令,这使得已习惯MCS-51内核单片机Keil C51编程的用户都为其C环......

两种“软件陷阱技术”的比较
A51 4.1.2 普通段(Generic Segment)
用4BIT OTP单片机实现USB/PS2 MOUSE的设计
基于GSM的GPS车辆定位监控系统
振荡器和专用寄存器功能
AT89C2051内部结构与功能
通过串口给ADC0809各种状态。
C语言宏定义技巧(常用宏定义)
MSC1211在高精度智能变送器开发中的应用
 
下一个:[单片机]调液晶模块T6963驱动范例
简介:
对比度可以调节说明LCD的驱动电压是好的. 给个实践OK的驱动范例给你, For the sake of "A month " :( /* ============================================================================ 测试软件 FOR T6963 &nbs......
 

上一个:[单片机]A51 4.1.3 堆栈段(Stack Segment)

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:10分钟 执行时间:16毫秒