扩展指令集下的数据存储器与变址寻址
需积分: 44 3 浏览量
更新于2024-08-10
收藏 9.9MB PDF 举报
"本文档主要介绍了数据存储器和扩展指令集在点云预处理中的应用,特别是关于PIC18微控制器的细节。"
在PIC18系列微控制器中,启用扩展指令集(XINST配置位设置为1)会显著改变数据存储器的使用方式。扩展指令集引入了对数据存储空间的新寻址模式,特别是在使用快速操作存储区的指令时,如大多数位操作和字节操作指令。这会影响到使用FSR2寄存器及其相关的文件操作数的间接寻址。
首先,值得注意的是数据存储空间的大小和线性寻址模式并未改变,SFR映射保持不变,核心PIC18指令仍然支持直接和间接寻址模式,固有和立即数寻址指令的操作也未受影响。FSR0和FSR1的间接寻址模式保持不变。
启用扩展指令集后,一个重要的变化是引入了“使用立即数偏移量进行变址寻址”的模式。在满足以下两个条件时,这个模式会被激活:使用快速操作存储区(地址低字节为0)以及文件地址参数小于或等于5Fh。在这种情况下,指令的文件地址不再被解析为直接地址或快速操作存储区的8位地址,而是作为FSR2指定地址的偏移量。通过将偏移量与FSR2的内容相加,可以得到操作的目标地址。
这种立即数变址寻址模式会影响到使用直接寻址模式的核心PIC18指令,尤其是那些针对字节和位的指令。约有一半的指令集会受到影响,而使用固有寻址或立即数寻址模式的指令则不受此模式影响。如果针对字节和位的指令使用了快速操作存储区或者文件地址超过60h,它们将按照原有的方式执行。
用户需要注意的是,立即数变址寻址模式会影响这些指令的汇编语法,具体的语法变化在文档的29.2.1节“扩展指令的语法”中有详细说明。
在实际应用中,特别是点云预处理这样的任务中,理解这些变化对于优化代码和高效利用存储空间至关重要。同时,开发者需要关注Microchip Technology Inc.的最新文档,以确保代码的兼容性和性能,因为微控制器的特性可能会随着新版本的更新而发生变化。
此外,文档还提醒用户,中文版仅供参考,重要信息不应忽略英文原文,且Microchip不对翻译的准确性负责。使用Microchip器件时,用户应自行承担风险,并确保符合技术规范,同时,对于生命维持和生命安全应用,所有责任由用户自行承担。最后,Microchip的知识产权受到保护,未经授权的许可转让是禁止的。
2010-05-20 上传
2010-04-27 上传
2022-07-14 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
李_涛
- 粉丝: 56
- 资源: 3856
最新资源
- 基于Python和Opencv的车牌识别系统实现
- 我的代码小部件库:统计、MySQL操作与树结构功能
- React初学者入门指南:快速构建并部署你的第一个应用
- Oddish:夜潜CSGO皮肤,智能爬虫技术解析
- 利用REST HaProxy实现haproxy.cfg配置的HTTP接口化
- LeetCode用例构造实践:CMake和GoogleTest的应用
- 快速搭建vulhub靶场:简化docker-compose与vulhub-master下载
- 天秤座术语表:glossariolibras项目安装与使用指南
- 从Vercel到Firebase的全栈Amazon克隆项目指南
- ANU PK大楼Studio 1的3D声效和Ambisonic技术体验
- C#实现的鼠标事件功能演示
- 掌握DP-10:LeetCode超级掉蛋与爆破气球
- C与SDL开发的游戏如何编译至WebAssembly平台
- CastorDOC开源应用程序:文档管理功能与Alfresco集成
- LeetCode用例构造与计算机科学基础:数据结构与设计模式
- 通过travis-nightly-builder实现自动化API与Rake任务构建