首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
七七养老
北京邮电大学 算法工程师
关注
已关注
取消关注
@苦学编程30年:
[知识点] 嵌入式软件开发知识点学习
注:本人学的是ARM Cortex-A7系列的处理器(IMX6ULL),针对的校招学习也是这方面的 点个小赞关注一波,持续更新…… [专栏]嵌入式软件校招笔记(点击跳转) [知识点] 嵌入式软件开发知识点学习 [知识点] ARM指令集详解 [知识点] 通讯协议(very重要) [项目] C++高并发Web服务器+个人改进项目详解 [八股] C/C++基础八股 [八股] C/C++进阶八股 [八股] 计算机网络八股 [八股] 操作系统八股 [八股] 嵌入式系统八股 [八股] Linux系统编程八股 [八股] Linux网络编程八股 秋招嵌入式企业面经 ARM体系架构 ARM处理器概述 ARM处理器是一种基于RISC指令集架构的微处理器,主要用于嵌入式系统和移动设备,如智能手机、平板电脑、数字相机等。ARM处理器的优点是功耗低、体积小、可靠性高,在嵌入式系统和移动设备领域得到广泛应用。 ARM处理器架构简洁高效,指令集精简,架构简单易于实现。同时,ARM处理器支持多种操作系统,可以使用Linux、Android等开源操作系统,也可以使用Windows、iOS等商业操作系统。因此,ARM处理器适合于开发各种类型的应用程序,包括企业应用、游戏、嵌入式应用、移动应用等。 ARM处理器的发展历程非常丰富,从最初的Acorn RISC Machine,到今天的ARMv8-A架构,其核心设计思想一直保持不变,就是简单、高效、低功耗。ARM处理器已经成为了绝大部分移动设备和嵌入式系统的首选处理器,是一个非常重要的微处理器平台。 ARM架构CPU 控制单元是整个CPU的指挥控制中心 ,由程序计数器PC(Program Counter),指令寄存器IR (Instruction Register)、指令译码器ID(Instruction Decoder)和操作控制器OC(Operation Controller)等,对协调整个电脑有序工作极为重要。它根据用户预先编好的程序,依次从存储器中取出各条指令,放在指令寄存器IR中,通过指令译码(分析)确定应该进行什么操作,然后通过操作控制器OC,按确定的时序,向相应的部件发出微操作控制信号。操作控制器OC中主要包括节拍脉冲发生器、控制矩阵、时钟脉冲发生器、复位电路和启停电路等控制逻辑。 运算单元可以执行算术运算(包括加减乘数等基本运算及其附加运算)和逻辑运算(包括移位、逻辑测试或两个值比较) 。相对控制单元而言,运算器接受控制单元的命令而进行动作,即运算单元所进行的全部操作都是由控制单元发出的控制信号来指挥的,所以它是执行部件。 存储单元包括CPU片内缓存和寄存器组 ,本文要将的内部寄存器也就是这里的寄存器组。是CPU中暂时存放数据的地方,里面保存着那些等待处理的数据,或已经处理过的数据,CPU访问寄存器所用的时间要比访问内存的时间短。采用寄存器,可以减少CPU访问内存的次数,从而提高了CPU的工作速度。但因为受到芯片面积和集成度所限,寄存器组的容量不可能很大。寄存器组可分为专用寄存器和通用寄存器。专用寄存器的作用是固定的,分别寄存相应的数据。而通用寄存器用途广泛并可由程序员规定其用途,通用寄存器的数目因微处理器而异。 总的来说,CPU从内存中一条一条地取出指令和相应的数据,按指令操作码的规定,对数据进行运算处理,直到程序执行完毕为止。而指令又是开发者设计好的, 开发者可以通过改变内部寄存器的内容来实现对CPU的控制 。 ARM公司概述 ARM的含义 ARM(Advanced RISC Machines)有三种含义:一个公司的名称、一类处理器的通称、一种技术。 ARM公司 成立于1990年11月,前身为Acorn计算机公司;主要设计ARM系列RISC处理器内核;授权ARM内核给生产和销售半导体的合作伙伴,ARM公司并不生产芯片;提供基于ARM架构的开发设计技术软件工具、评估板、调试工具、应用软件、总线架构、外围设备单元等; 主流的两种处理器 RISC处理器(精简指令集) 只保留常用的的简单指令,硬件结构简单,复杂操作一般通过简单指令的组合实现,一般指令长度固定,且多为单周期指令。RISC处理器在功耗、体积、价格等方面有很大优势,所以在嵌入式移动终端领域应用极为广泛。 RISC体系结构_百度百科 CISC处理器(复杂指令集) 不仅包含了常用指令,还包含了很多不常用的特殊指令,硬件结构复杂,指令条数较多,一般指令长度和周期都不固定。CISC处理器在性能上有很大优势,多用于PC及服务器等领域。 复杂指令集计算机_百度百科 risc和cisc的区别 (1)指令系统:RISC设计者把主要精力放在那些经常使用的指令上,而CISC计算机的指令系统比较丰富。 (2)存储器操作:RISC对存储器操作有限制,CISC机器的存储器操作指令多; (3)程序:RISC汇编语言程序复杂;CISC汇编语言程序编程简单。 (4)中断:RISC机器在一条指令执行的适当地方可以响应中断;而CISC机器是在一条指令执行结束后响应中断。 (5)CPU:RISCCPU功耗低;而CISCCPU功耗大。 (6)设计周期:RISC微处理器结构简单;CISC微处理器结构复杂; (7)用户使用:RISC微处理器结构简单,CISC微处理器结构复杂; (8)应用范围:RISC机器更适合于专用机;而CISC机器则更适合于通用机。 ARM指令集 指令 能够指示处理器执行某种运算的命令称为指令(如加、减、乘...); 指令在内存中以机器码(二进制)的方式存在;每一条指令都对应一条汇编;(注意:不可打断)程序是指令的有序集合;指令集 处理器能识别的指令的集合称为指令集;不同架构的处理器指令集不同;指令集是处理器对开发者提供的接口; ARM指令集 大多数ARM处理器都支持两种指令集: ARM指令集 所有指令(机器码)都占用32bit存储空间(4个字节);代码灵活度高、简化了解码复杂度;执行ARM指令集时PC值每次自增; Thumb指令集 所有指令(机器码)都占用16bit存储空间(2个字节);代码密度高、节省存储空间;执行Thumb指令集时PC值每次自增; ARM指令集_百度百科 编译原理 主要过程为:预处理(预编译)->编译->汇编。 机器码(二进制)是处理器能直接识别的语言,不同的机器码代表不同的运算指令,处理器能够识别哪些机器码是由处理器的硬件设计所决定的,不同的处理器机器码不同,所以机器码不可移植。汇编语言是机器码的符号化,即汇编就是用一个符号来代替一条机器码(一一对应),所以不同的处理器汇编也不一样,即汇编语言也不可移植。C语言在编译时我们可以使用不同的编译器将C源码编译成不同架构处理器的汇编,所以C语言可以移植。 编译原理_sundingh的博客-CSDN博客_编译原理 ARM存储模型 1. ARM数据类型 1.1. ARM的基本数据类型 ARM采用32位架构,即ARM一次可以处理32bit的数据,基本的数据类型有以下三种: Byte 8 bits(1个字节) Halfword 16 bits(2个字节) Word 32 bits(4个字节) 前面说到,C语言是可以移植到arm处理器上的,但是C语言的数据类型和ARM的数据类型并不兼容,所以arm-gcc编译器在编译的时候,会将C语言的类型转换成ARM可以处理的数据类型,比如 char =》 Byte,short =
点赞 14
评论 12
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
04-30 15:39
字节跳动_研发(实习员工)
27届 在字节实习有感!!!
1. 实习有什么作用看到漫天的帖子都说实习是为了找工作,进大厂,但是这是建立在你已经确定好要工作的情况下,其实这个时候实习就是你必须要经历的一部分了,但我想说的是实习对于还没确定方向的同学来说有什么作用。1.1. 对大厂祛魅经历过实习之后,你就知道工作到底是在干什么,做一个需求需要经历什么,每天的工作强度是怎么样,不是说你进了大厂就能接触到多么厉害厉害的技术,相比于华丽的代码,线上的稳定性更加重要,再好的设计模式也比不上0bug的舒服。但是这不是你写屎山代码的理由,在保证稳定性的基础上,去优化自己的代码。上班之后你就知道双休是多么舒服,在上学的时候不觉得,上班之后周末的两天超级爽,尤其是周五的...
实习生活中那些难忘的瞬间
点赞
评论
收藏
分享
04-25 20:24
博世_车辆运动控制系统中国区_数据开发(实习员工)
测试开发 - 腾讯云智 - 一面面经
面试流程:自我介绍实习经历具体讲解这项工具主要是开发的目的是什么在这个过程中你的角色是支持在线表格读取的话,数据量大吗如何保证在线数据的实时提取涉及到的后端服务,在这个项目中的功能是什么这个过程中比较难的点是什么AI 相关的实践具体讲解项目的代码,是直接复制粘贴到大模型中,还是作为代码文件上传日常使用的 IDE 是什么智能插件有了解和使用吗DeepSeek 非常火,在代码层面,和之前实习中使用的大模型,有什么区别,各自的优缺点,具体讲解Jenkins 相关的自动化建设,如何设计测试用例和使用相关测试框架冒烟测试用例设计的原则是什么如果需要针对这些用例更新,更新的原则是什么整个冒烟测试流水线,测...
查看30道真题和解析
点赞
评论
收藏
分享
03-30 19:30
石家庄学院 Java
稳啦稳啦,学java的又爽到了
野蛮的柯基在游泳:
都能入股了,还得是Java
点赞
评论
收藏
分享
03-11 02:16
武汉生物工程学院 Java
25 0 offer😭😭😭到底要怎么才能拿到offer啊,深夜emo了
群星之怒:
1.照片可以换更好一点的,可以适量P图,带一些发型,遮住额头,最好穿的正式一点,可以适当P图。2.内容太少。建议添加的:求职意向(随着投递岗位动态更改);项目经历(内容太少了建议添加一些说明,技术栈:用到了什么技术,还有你是怎么实现的,比如如何确保数据传输稳定的,角色注册用到了什么技术等等。)项目经历是大头,没有实习是硬伤,如果项目经理不突出的话基本很难过简历筛。3.有些内容不必要,比如自我评价,校内实践。如果实践和工作无关千万别写,不如多丰富丰富项目。4.排版建议:建议排版是先基础信息,然后教育背景(要突出和工作相关的课程),然后专业技能(一定要简短,不要长篇大论,写你会什么,会的程度就可以),然后是项目经历(一定要详细,占整个简历一定要超过一半,甚至超过百分之70都可以)。最后如果有一部分空白的话可以填补上校内获得的专业相关的奖项,没有就写点校园经历和自我评价。5.技术一定要够硬,禁得住拷打。还有作息尽量保证正常,不要太焦虑。我24双非本科还是非科班,秋招春招各找了一段实习结果都没有转正,当时都想噶了,最后6月份在校的尾巴也找到一份工作干到现在,找工作有时很看运气的不要急着自我否定。 加油
点赞
评论
收藏
分享
04-26 19:28
已编辑
长安大学 Java
上海银行04-26笔试
只记录自己能记得的题目吧,攒攒好运~单选最短时间置换算法直接插入排序,求最少的比较次数IP/掩码,求子网的最大IP地址#牛客AI配图神器#linuxSQL计网多选抽象类与接口c++的指针和引用(我不是考java吗???)线程和进程完全二叉树,第7层有4个叶子节点,求该二叉树最少最多的节点个数给定一个序列,求栈的输出序列c++构造函数和析构函数(😔)给出表结构和要求,选正确SQL语句编程给定任意字符串比如"abacb",对奇数位染黑,求染黑个数与未染黑个数相等的字符有几个;自余数注意,是双机位哦~
查看11道真题和解析
投递上海银行等公司6个岗位 >
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
暑期后端高频问题汇总
7.3W
2
...
左手敲代码的程序员,不配拥有offer吗?
7.1W
3
...
想听实话吗,校招ssp聊聊大厂客户端
3.7W
4
...
五一假期,弯道超车时间表
1.0W
5
...
后端简历上最值得写的项目
9828
6
...
北京到底有谁在啊?
8665
7
...
五一别写你那破开源代码了
7720
8
...
五一准备刷完这些面试八股题!!
6829
9
...
快手投诉后续- HR把我拉黑了!
6343
10
...
和ai聊天,忍不住爆哭
5925
创作者周榜
更多
正在热议
更多
#
设计人如何选offer
#
98309次浏览
689人参与
#
找工作,行业重要还是岗位重要?
#
7611次浏览
102人参与
#
五一之后,实习真的很难找吗?
#
45571次浏览
324人参与
#
盲审过后你想做什么?
#
12655次浏览
113人参与
#
外包能不能当跳板?
#
22184次浏览
191人参与
#
领导秒批的请假话术
#
9878次浏览
74人参与
#
考研可以缓解求职焦虑吗
#
21073次浏览
248人参与
#
五一假期,你打算“躺”还是“卷”?
#
29838次浏览
431人参与
#
找工作前vs找工作后的心路变化
#
7193次浏览
64人参与
#
面试等了一周没回复,还有戏吗
#
115598次浏览
1074人参与
#
硬件人,你被哪些公司给挂了
#
46669次浏览
722人参与
#
安克创新求职进展汇总
#
32564次浏览
415人参与
#
大疆的机械笔试比去年难吗
#
69618次浏览
603人参与
#
应届生薪资多少才合理?
#
3102次浏览
24人参与
#
牛友们的论文几号送审
#
27245次浏览
623人参与
#
写简历别走弯路
#
714402次浏览
7850人参与
#
你喜欢工作还是上学
#
37624次浏览
412人参与
#
如果有时光机,你最想去到哪个年纪?
#
43318次浏览
767人参与
#
如果不工作真的会快乐吗
#
101165次浏览
867人参与
#
每人推荐一个小而美的高薪公司
#
72846次浏览
1357人参与
牛客网
牛客企业服务