10.3 ARM 体系与架构 编程

一、什么是大小端?

大小端是针对于多字节数据来说的。嵌入式一般是大端模式。

大端模式:低位字节在高地址上,高位字节在地地址上。

小段模式:低位字节在低地址上,高位字节在高地址上。

二、如何判断计算机处理器是大端还是小端?

#include <stdio.h>
int checkCPU(){
    {
        union w {
            int a;
            char b;
        } c;
        c.a =1;
        return(c.b == 1);
    }
}
int main()
{
    if (checkCPU())
        printf("小端\n");
    else
        printf("大端\n");
    return 0;
}

三、如何进行大小端转换?

#include <stdio.h>
#include <string.h>

// 短整型大小端转换
short swap_short(short value) {
    return ((value & 0xFF) << 8) | ((value >> 8) & 0xFF); //之所以 & 是为了避免算数右移。
}

// 整型大小端转换
int swap_int(int value) {
    return ((value & 0xFF) << 24) | ((value & 0xFF00) << 8) |
        ((value >> 8) & 0xFF00) | ((value >> 24) & 0xFF);
}

// 任意长度数

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

C++/嵌入式开发 秋招面经 文章被收录于专栏

一名985硕,在25年秋招中斩获多个C++/嵌入式开发Offer。本专栏将分享我的面经,涵盖C/C++、操作系统、计算机网络、ARM体系与架构、Linux应用/驱动开发、Qt、通信协议及开发工具链等核心内容。

全部评论

相关推荐

点赞 评论 收藏
分享
04-21 16:27
已编辑
蚌埠坦克学院 C++
提问环节:&nbsp;1、说一下C++的三大特性2、C++多态3、讲一下虚函数指针和虚函数表、虚函数表在虚拟内存的哪个区4、说一下用到的C++11/14/17的新特性5、多线程同步的方式6、用过哪些锁?7、讲一下RAII8、智能指针有哪些?有什么特点?9、写一个简单的shared_ptr10、shared_ptr的底层,在内存中是怎么布局的?11、说一下shared_ptr的循环引用?怎么解决?weak_ptr如何创建和使用?12、指向内存的shared_ptr都释放了,但还有一个weak_ptr指向这块内存,这块内存会释放吗?13、weak_ptr也有计数吗?说一下14、讲一下常见的几种设计模式和实现方法15、单例模式的实现,以及单例模式的优缺点16、设计模式的六大原则17、聊一下pImpl?18、ffmpeg和gstreamer框架的对比和优缺点19、说一下音视频同步的原则和做法20、OpenGL渲染帧率如何确定?21、如果显示器帧率是60帧,视频是150帧,应该怎么渲染22、介绍一下你的码率控制模块的设计框架?码率控制模式如何选型?(cbr/abr/vbr)23、介绍一下你是如何处理弱网卡顿的(时域svc&nbsp;+&nbsp;记忆化滑动窗口预测)24、如果网络持续恶化,你会立刻降码率吗?25、介绍一下你的多路解码模块设计?内存池大概是怎么实现的?(多级分辨率链表&nbsp;+&nbsp;LRU)26、讲一下AI工具,如何使用和发布skills和mcp&nbsp;server27、平时用AI开发多吗?都是怎么用AI的?28、Qt主窗口用的QWidget还是QMainWindow?为什么?29、&nbsp;对多进程和多线程的理解,顺便提到macOS偏好多进程开发的原因30、为什么基类析构函数一般做成虚函数,构造函数能不能做成虚函数,为什么?31、共享屏幕看一下项目代码,看看你的代码习惯反问环节:Q1:您组里做什么业务呢?A1:音视频SDK开发,涉及linux和windows端,这块跟你经历接近;除此之外还要在移动端APP做拼接、特效等功能,不过这些你过来后也可以学。Q2:您是如何解决soc芯片编码能力不足,但需要给多路APP用户推流的问题?如果复用某几路流,码控不能兼容用户体验,您是如何思考的?A2:我们业务是手机和相机局域网通信的,并且只推一路流(笑),不过你提的这个问题确实不好解决。Q3:请您给一些关于我学习和成长的建议?A3:了解基础技术的前提下,多学习和使用AI吧,AI更新太快,程序员都要被自己开发的AI干掉了(笑)
点赞 评论 收藏
分享
评论
4
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务