首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
苦学编程30年
中国劳动关系学院 计算机类
关注
已关注
取消关注
每天学习一点知识点
@苦学编程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
评论 11
全部评论
推荐
最新
楼层
滴滴
校招火热招聘中
官网直投
相关推荐
sorano_
05-09 21:48
门头沟学院 计算机类
拼多多5.9笔试3.88/4,但是cpp,有希望进面吗
所有流程都在泡池子,希望这段时间有个面试来转移注意力pdd是笔试完再发测评再约面的吗?cpp选手是不是压根进不了面或者进面就是送的
投递拼多多等公司10个岗位 >
点赞
评论
收藏
转发
flamingSnake
05-09 22:18
已编辑
东南大学 计算机类
快手 基础架构 一面
时长:60min聊项目(30min)Kafka为什么性能这么好?你刚才提到了零拷贝,详细介绍一下相比于普通IO的模式,sendfile减少了几次拷贝?Kafka可用性如何保证的,介绍一下?Kafka leader副本挂了,如何切换leader副本,选主过程讲一下?Kafka副本的ISR是什么概念?Kafka如何实现Exactly-Once语义Kafka消息位点机制,如何做消息幂等?Kafka消费者提交offset,相关数据会存放到什么地方?Java介绍一下JVM内存模型介绍一下元空间,运行时常量池为什么String是不可变的?String的不可变性有什么作用?String的拼接为什么有性能问题...
快手二面130人在聊
我的实习求职记录
软件开发2024笔面经
点赞
评论
收藏
转发
牛客503072639号
03-21 00:10
上海对外经贸大学 旅游管理类
什么牛马
什么牛马,真来气 #春招#
点赞
评论
收藏
转发
听风与他
05-11 17:04
湖北师范大学 计算机类
鼠鼠拿到第一份offer啦!(0-1的突破)
虽然只是一个小公司java开发实习,一面就要鼠鼠了,坐标:浙江宁波,150一天,签三个月实习合同,但是学校不放人,要学院同意,书记签字,家长来签字,太麻烦了,流程,根本不想让家里人来瞎跑,只是一个小offer,真的很想去,但是学校天天查课,点名,数人头,emo了,拒了这个,五月尾,六月真不知道能不能找到实习啦!另外小米二面面完了,15号之前,一个星期内没打电话过来,就是G了。这是最接近大厂的一次面试。另外,七牛云笔试我快AK了都没有面试吗?阿里国际要约面鼠鼠了,不久后,有点害怕!最后还是决定拒了,再找找有没有title大一点的公司吧,再请假实习去。
点赞
评论
收藏
转发
1
收藏
评论
分享
回复帖子
全站热榜
1
...
携程oc了
2.6W
2
...
美团-Java后端-平台技术部-一面凉经(复活赛)
1.3W
3
...
比亚迪机械面经&薪资爆料&面试题目&解答思路
1.3W
4
...
【话术建议】求职者和企业的互骗话术?
8850
5
...
瑞幸java校招二面(史诗级80min)
7731
6
...
滴滴秋储后端(秒挂)
5215
7
...
快手二面g
5042
8
...
【进面核心】如何紧盯个人简历与企业需求的契合度
4895
9
...
字节抖音电商后端日常实习一二三面已oc
4664
10
...
腾讯 后台开发 一面
4235
正在热议
#
牛客帮帮团来啦!有问必答
#
710475次浏览
11528人参与
#
许愿池
#
77204次浏览
1542人参与
#
通信硬件人笔面经互助
#
107765次浏览
2178人参与
#
你的秋招进展怎么样了
#
500944次浏览
13425人参与
#
找工作时遇到的神仙HR
#
177670次浏览
1744人参与
#
如何写一份好简历
#
259336次浏览
3918人参与
#
铜五铁六真的存在吗?
#
27351次浏览
293人参与
#
找工作,你会甘心进小厂还是猛冲大厂
#
35064次浏览
352人参与
#
产品实习,你更倾向大公司or小公司
#
35955次浏览
548人参与
#
非技术岗是怎么找实习的
#
73867次浏览
1385人参与
#
市场营销面经
#
4551次浏览
125人参与
#
互联网公司评价
#
79573次浏览
1087人参与
#
通信硬件薪资爆料
#
196324次浏览
1759人参与
#
你的秋招进行到哪一步了
#
353039次浏览
6269人参与
#
硬件兄弟们 甩出你的华为奖状
#
27518次浏览
180人参与
#
无实习如何秋招上岸
#
224711次浏览
3518人参与
#
投了多少份简历才上岸
#
56680次浏览
947人参与
#
面试中的破防瞬间
#
82584次浏览
1015人参与
#
通信/硬件的薪资开多少,才值得去?
#
10743次浏览
140人参与
#
产品人求职现状
#
50595次浏览
747人参与
牛客网
牛客企业服务