51单片机的数组应该如何定义?code与data有什么作用

资料大小: 0.05 MB

所需积分: 1

下载次数:

用户评论: 0条评论,查看

上传日期: 2019-08-09

上 传 者: 发烧友他上传的所有资料

资料介绍

标签:ROM(180)存储器(2300)寄存器(1599)

  数组前不加“code”或“data”,则默认将数组存放在程序存储器中;

  code 指定数据是存储在代码区,数据是在编程的时候跟代码一起写入代码存储器,运行过程中不能改变;

  xdata 指定数据是存储在外部数据存储器了;

  data 指定数据存储在内部低128字节数据存储器里,如果变量不指定存储位置,默认就是data型,这部分存储器寻址速度最快;

  idata 指定数据存储在内部低256字节数据存储器里,但51只有128字节内部RAM,52才有256字节;

  pdata 指定数据存储在外部低256字节数据存储器里,这时候寻址用8位寄存器R0和R1,而不用16位的DPTR,寻址速度比xdata快。

  单片机C语言unsigned char code table[] code 是什么作用?

  code的作用是告诉单片机,我定义的数据要放在ROM(程序存储区)里面,写入后就不能再更改,其实是相当与汇编里面的寻址MOVC(好像是), 因为C语言中没办法详细描述存入的是ROM还是 RAM(寄存器),所以在软件中添加了这一个语句起到代替汇编指令的作用,对应的还有data是存入RAM 的意思。

  程序可以简单的分为code(程序)区,和data (数据)区,code区在运行的时候是不可以更改的,data区放全局变量和临时变量,是要不断的改变的,cpu从code区读取指令,对data区的数 据进行运算处理,因此code区存储在什么介质上并不重要,像以前的计算机程序存储在卡片上,code区也可以放在rom里面,也可以放在ram里面,也 可以放在flash里面(但是运行速度要慢很多,主要读flash比读 ram要费时间),因此一般的做法是要将程序放到flash里面,然后load到 ram里面运行的;DATA区就没有什么选择了,肯定要放在RAM里面,放到rom里面改动不了。

用户评论

查看全部 条评论

发表评论请先 , 还没有账号?免费注册

发表评论

用户评论
技术交流、我要发言! 发表评论可获取积分! 请遵守相关规定。
上传电子资料

下载排行

本周

  1. 从单片机基础到程序框架的PDF电子书免费下载
  2. STM32迷你板电路原理图免费下载
  3. 应该如何学习STM32资料概述
  4. 简单无线电遥控发射接收电路图免费下载
  5. GD32F130C8T6单片机开发板的资料合集免费下载
  6. 什么是Arduino?Arduino的学习笔记详细资料免费下载
  7. STM32F030单片机和TFT薄膜晶体管的电路原理图免费下载
  8. 使用ATmega8l单片机设计一个函数信号发生器的设计报告免费下载
  9. 平面构成的图像处理学习教程免费下载
  10. STM32L053R8的GPIO控制例程和工程文件免费下载

本月

  1. 从单片机基础到程序框架的PDF电子书免费下载
  2. 手把手教你学51单片机C语言版PDF电子书和例程合集免费下载
  3. 51单片机C语言程序设计教程PDF电子书和例程代码及课后作业
  4. 51单片机教程之51单片机开发攻略免费下载
  5. 匠人手记一个单片机工作者的实践与思考PDF电子书免费下载
  6. 零死角玩转STM32F103迷你板PDF电子书免费下载
  7. STM32迷你板电路原理图免费下载
  8. 单片机的基础知识教程详细概述
  9. 应该如何学习STM32资料概述
  10. 51单片机的指令系统详细资料说明

总榜

  1. 单片机C语言程序设计实训100例——基于8051 Proteus仿真
  2. 51单片机学习资料打包
  3. 单片机超级精华包
  4. 网上学单片机(入门篇)
  5. 电子工程师基本知识结构
  6. Keil uVision3下载 (破解版带注册机+中文版)
  7. 《C51单片机及C语言知识点必备秘籍》电子发烧友网创新系列电子书
  8. 51单片机c语言超强学习资料
  9. PIC单片机应用常见问答
  10. 单片机C语言程序设计实训100例——基于8051 Proteus仿真