多语言展示
当前在线:1772今日阅读:195今日分享:14

如何使用VB进行移位操作/ &H怎么用

在程序设计中,经常会用到很多标志位,有时候我们需要把这些标志位保存到芯片中,因为芯片中的Flash缓存比较小,需要尽量的在最小的容量中存储尽可能多的标志位。比如我们可以在一个字节中存储多达8个标志位。下面小编就来介绍一下如何使用移位操作在字节中设置和读取对应标志位。
工具/原料

VB6.0

【思路】
1

【设置标志位】一个16进制字节最大可以为【FF】,转换为二进制就是【11111111】,8个二进制中每一位都可以设置为0或者1,这样就相当于8个标志位。可以根据我们的需要将标志位进行修改和存储。

2

【设置协议】针对不同的标志位我们可以设置对应的存储协议,比如从左到右第一位如果是0表示本程序版本为管理权限,如果是1表示为操作权限,同样可以定下8个标志位的含义。

3

【使用VB读取标志位】读取标志位的方法可以使用移位操作,使用运算符【&】来实现。因为两个参数通过这个运算符计算后会在所有二进制中获得最小值。比如 0 & 1 的结果是就是0,取的就是最小值。所以我们需要取从左到右第一位的值时,可以使用 &H80的方法。如果 &H80 的结果为&H80,表示原始值第一位为1,如果为0,表示原始值第一位为0.

【编写测试程序】
1

打开VB6.0编辑器,在界面上放置一个文本框和一个按钮。文本框用于输入要比较的内容,按钮表示确认开始比较。

2

输入按钮的代码,当输入的数据与&H80的比较结果为1时,表示为管理权限,否则为操作权限。

3

按【F5】运行程序,弹出程序界面。

4

在文本框中输入9A,点击【比较】,弹出【管理权限】的窗口。因为9A的二进制为【10011010】,第一位为1,比较结果正确。

5

在文本框中输入72,点击【比较】,弹出【操作权限】的窗口。因为72的二进制为【】,第一位为0,比较结果正确。

推荐信息