• C51内存类型


    bdata

    bdata内存类型只能用于声明变量。您不能声明bdata函数。该存储器使用8位地址直接访问,是8051的片内位可寻址RAM。用bdata类型声明的变量是位可寻址的,可以用位指令读写。

    code

    代码存储器类型可用于常量和函数。该存储器使用16位地址访问,可以是片内或外部的。

    • 对于常量(ROM变量),代码内存限制为64K。对象被限制为64K,并且不能跨越64K的边界。声明代码的常量变量位于代码内存类中。
    • 对于程序代码(函数),代码内存限制为64K。默认情况下,程序函数存储在代码内存类中。不需要代码内存类型说明符。

    data

    数据内存类型只能用于声明变量。您不能声明数据函数。该存储器使用8位地址直接访问,是8051的片内RAM。它具有最短(最快)的访问时间,但数据量有限(128字节或更少)。

    idata

    idata内存类型只能用于声明变量。您不能声明idata函数。该存储器使用8位地址间接访问,是8051的片内RAM。idata的大小是有限的(256字节或更少)。idata的低位地址与数据存储器的相应地址重叠。

    xdata

    xdata内存类型只能用于声明变量。您不能声明扩展数据函数。该存储器使用16位地址间接访问,是8051的外部数据RAM。扩展数据的大小有限(64K或更少)。

    pdata

    pdata内存类型只能用于声明变量。您不能声明pdata函数。该存储器使用8位地址间接访问,是8051外部数据RAM的一个256字节页面。pdata的数量受到大小限制(256字节)。

    far

    远存储器类型可用于变量和常数。该存储器使用24位地址访问,可以是片内或外部的。

    • 对于变量,远内存限制为16M。对象被限制为64K,并且不能跨越64K的边界。声明为far的变量位于HDATA内存类中。
    • 对于常量(ROM变量),远内存限制为16M。对象被限制为64K,并且不能跨越64K的边界。声明为far的常量变量位于HCONST组中。
  • 相关阅读:
    datax同步数据简介
    C++重载 强制类型转换运算符
    【CCF】Z字形扫描
    0day是什么,有哪些有影响力的0day漏洞
    Android线程优化——整体思路与方法
    传递datetime数据类型至前端 时分秒消失
    【uniCloud】云对象的应用与提升
    git commit添加模板
    spring - AnnotationConfigApplicationContext启动之reader、scanner、register逻辑整理
    list.toArray
  • 原文地址:https://blog.csdn.net/lzw508170827/article/details/126119664