【触觉智能 Purple Pi OH 开发板体验】+ Linux下位移运算及实现

描述

本文转载于Purple Pi OH开发爱好者,作者李唐

Linux下对外设的控制中,往往要用到移位操作,若设计出相应的函数会有效地通过使用的效率。

位移函数的作用是按位进行数据移动,其数据类型为字节型。在此类函数中,包括左移、右移和位交换。

左移

左移函数的表达式为:y=a<

实现左移的函数方式为:y=a*(2^n) ,2^n表示2的n次方。

实现左移的函数内容为:
触觉智能

在完成该函数的编辑后,将其存入文件yw.sh即可。

为验证其正确性,需键入指令source ./ yw.sh即可运行该函数。该函数是双目运算,故要键入2个操作数。以操作数0x85为例,其左移2位的结果为0x224,说明函数正确。

触觉智能

右移

右移函数的表达式为:y=a>>n (a为整数型变量,n=0~7)

实现右移的函数方式为:y=a/(2^n)

实现右移的函数内容为:
触觉智能

在完成该函数的编辑后,将其存入文件yw.sh即可。

为验证其正确性,需键入指令source ./ yw.sh即可运行该函数。该函数是双目运算,故要键入2个操作数。以操作数0x85为例,其右移2位的结果为0x21,说明函数正确。
触觉智能

位交换

在数据操作处理中,常会涉及半字节的操作,比如用字节数据的高4位或低4位,或交换数据的高、低4位等。

对提取的高4位测试为:
触觉智能

对提取的低4位测试为:
触觉智能

这样我们就基本上解决了位移操作的函数设计及处理方法问题,尽管这些问题很基础,但它却很实用。

 

 

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分