繁体   English   中英

PIC16f877a 微控制器是否遵循小端字节排序系统?

[英]Does PIC16f877a microcontroller follow little endian byte ordering system?

我已经在 XC8 编译器上编译了这个简单的代码,并将十六进制文件加载到 Picsimlab - 具有 PIC16f877a 微控制器的模拟器板(板 4)中。

    unsigned int x = 1;
    char *ptr = (char *) &x;

    if (*ptr == 1)
    {

        clcd_print("little Endian", LINE1(0));
    }
    else
    {
        clcd_print("big Endian", LINE1(0));
    } 

output:小端

那么我们可以推断Xc8编译器遵循小端字节序系统来编程PIC16f877a吗?
这是否也意味着 PIC16f877a 使用小端字节排序系统将变量存储到其数据 memory 中?

您能否提供提及字节排序系统的文档链接,然后是 PIC16f877a 和 XC8 编译器?

查看XC8编译器的用户指南。 在第 5.4.2 章中,您可以阅读 integer 变量的字节顺序:

所有 integer 值都以小端格式表示,最低有效字节 (LSB) 在低地址

Little endian 是默认的,并且仅用于所有 xc 编译器的 endianism。

PIC16 系列是 8 位 controller,因此 controller 本身不必关心字节序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM