历史上的今天
返回首页

历史上的今天

今天是:2024年11月13日(星期三)

正在发生

2019年11月13日 | ARM编程时数据类型的影响

2019-11-13 来源:51hei

这是我今天下午看那本<>所学到的东西。前面的关于ARM核的指令我就不讲了,只说下今天看的关于怎么提高C编程的效率,我还只看了那基本数据类型的定义时所应该要注意的事项,前面我在一篇<>已提到过内存的数据进入ARM核时要经过一个符号扩展,也就是说一个不足32位的数据经过内核会被扩展成32位的,那么我们在编程时就要注意咯,具体有以下几个方面:


1)我们如果在程序中定义了一个字符性的变量,那么编译器会对这个变量进行一个判别,就是这个字符变量值超过了255没,这样势必会增加一条指令,而我们如果用unsignedint,则可以省去那条多余的指令,

2)如果程序中有关于数组的操作时,我们尽量要用指针来操作,为什么呢,因为编译器对数组它分两条指令来实现数组的地址偏移,而用指针,它其实就是一个地址,偏移当然一条指令就够拉。

3)如果我们程序中有不同数据类型的数据直接运算时,这时我们要避免这种现象的发生,因为它会另外生成一条语句来实现数据位数的扩展,所以我们可以在他们计算完后,再统一用一条符号强制命令进行转换。

4)在进行乘除法运算时,如果变量能够用无符号型的,就不要用有符号的,因为无符号的运算在进行除法和乗法运算时编译器会尽量通过右移来实现,这样处理速度快

推荐阅读

史海拾趣

Bedford Opto公司的发展小趣事

Bedford Opto公司深知人才是企业发展的核心。因此,公司高度重视人才培养和团队建设。通过提供良好的工作环境和福利待遇,吸引和留住了一批优秀的人才。同时,公司还注重员工的培训和发展,不断提升员工的专业素质和综合能力。

这些故事虽然基于虚构,但它们反映了电子行业中许多企业可能经历的发展过程和面临的挑战。当然,Bedford Opto公司的真实发展历程可能有所不同,具体的故事需要参考公司的官方资料和相关报道。

ABL Aluminum Components公司的发展小趣事

随着技术的成熟,ABL公司开始积极拓展市场。公司通过与大型电子产品制造商建立合作关系,将其铝合金组件应用于更广泛的领域。同时,ABL公司也注重品牌建设,通过参加行业展会、发布技术白皮书等方式,提升公司在业内的知名度和影响力。随着市场份额的逐步扩大,ABL公司逐渐成为了电子行业铝合金组件领域的领军企业。

Helicomm公司的发展小趣事

随着技术的成熟,ABL公司开始积极拓展市场。公司通过与大型电子产品制造商建立合作关系,将其铝合金组件应用于更广泛的领域。同时,ABL公司也注重品牌建设,通过参加行业展会、发布技术白皮书等方式,提升公司在业内的知名度和影响力。随着市场份额的逐步扩大,ABL公司逐渐成为了电子行业铝合金组件领域的领军企业。

HI Microwave Technology Limited公司的发展小趣事

HI Microwave深知质量是企业生存和发展的根本。因此,公司从原材料采购到成品出厂的每一个环节都严格把关,确保产品质量符合国际标准和客户要求。同时,公司还建立了完善的售后服务体系,为客户提供及时、专业的技术支持和解决方案。这种以客户为中心的服务理念赢得了客户的信任和忠诚,也为公司的持续发展奠定了坚实的基础。

旌芯半导体(GN)公司的发展小趣事

人才是企业最宝贵的资源。HI Microwave高度重视人才培养和团队建设,通过引进和培养高素质的技术人才和管理人才,不断提升企业的核心竞争力。公司建立了完善的人才激励机制和培训体系,鼓励员工不断学习和创新。同时,公司还注重营造和谐、开放的企业文化氛围,激发员工的积极性和创造力。这些措施为公司的持续发展提供了有力的人才保障和智力支持。

富之光(Fujicon)公司的发展小趣事

富致科技的研发团队最早可以追溯到1997年,当时一群在电子、材料、化工领域拥有深厚背景的专家聚集在一起,共同探索高分子正温度系数PPTC技术的可能性。随着技术的不断成熟,他们于1999年12月正式成立了富致科技股份有限公司,将研发成果转化为实际产品,并迅速在台湾新北市五股工业园区建立了生产基地。这一初期的技术积累和团队组建,为富致科技后续的发展奠定了坚实的基础。

问答坊 | AI 解惑

听人说居然有0.5元以下的单片机,你见到最便宜的是多少钱的?

今天看到坛子里有人说有5毛钱的单片机,类似闪灯IC等, 没有听说过,大家见到最便宜的单片机都多少钱?有什么功能,干什么用的呢?…

查看全部问答>

请教WinCE下加载位图的文件路径问题

在模拟器下实现加载位图,请问: 1、此时函数SHLoadDIBitmap(TEXT(\"\\\\*.bmp\"))中的路径该如何设置呢,或者是说我试图加载的位图应该存放于什么路径呢; 2:位图本身的大小有没有什么限制啊? 谢谢各位啦…

查看全部问答>

大家知道怎么样选购UPS电源吗?

很多人在购买UPS的时候没有考虑到UPS电源的很多因素,这样将会损坏到我们的服务器和需要保护的设备。首先要根据您的负载(也就是功率大小)来选定您的UPS电源,比如说您的服务器是750瓦的那么您要选购买1500VA或者是2000VA的UPS电源,为什麽不能选 ...…

查看全部问答>

关于若干个s7PLC DP 组网的问题

本人现在面临一个DP组网问题,想求教。现有3个CPU315-2DP,6个EM277,一个5621卡。我希望能一个CPU315-2DP-1通过DP带一个EM277, 另一个CPU315-2DP-2通过DP带3个EM277, 还有一个CPU315-2DP-3通过DP带2个EM277, 希望CP5621能和每个CPU315-2DP通讯,各C ...…

查看全部问答>

急,430F449的P1中断服务程序不能运行(附程序),请多指教

//下面是我的一段P1键盘中断测试程序,可是我好象进不了P1中断服务程序,请各位大侠多多指教 #include <msp430x44x.h> void inter (void); int num=0; void main(void) { WDTCTL=WDTPW+WDTHOLD; P1DIR&=~0X07; P1IES|=0X ...…

查看全部问答>

在skyeye1.2.4上编译并运行2.6.14内核

SkyEye是一个开源软件(OpenSourceSoftware)项目,中文名字是\"天目\"。SkyEye的目标是在通用的Linux和Windows平台上实现一个纯软件集成开发环境,模拟常见的嵌入式计算机系统(这里假定\"仿真\"和\"模拟\"的意思基本相同);可在SkyEye上运行μCL ...…

查看全部问答>

【转载】Linux中的通知链技术

转载自 http://blog.csdn.net/jjbear_ustc/archive/2009/12/22/5057009.aspx在Linux内核中,各个子系统之间有很强的相互关系,某些子系统可能对其它子系统产生的事件感兴趣。为了让某个子系统在发生某个事件时通知感兴趣的子系统,Linux内核引 ...…

查看全部问答>

求怎么样能快速看懂线路图

我是一个刚刚学习电子技术的初学者,每次看到原理图头都朦朦的,不知道从哪里看起,请教一下,谢谢…

查看全部问答>

宽带程控放大器

做个程控放大器通频带宽大于60MHz,增益大于60dB用什么芯片好??带宽增益积要非常的高??…

查看全部问答>