如何检查某些uint是否已应用0x01000000掩码?

宇宙

我做一些逆向工程。有一个uint值,指示存储某些内容的插槽号。但是有不同类型的存储。当某些内容存储在其他存储中时,该值将应用0x01000000掩码。并且当它再存储在一个存储器中时,掩码为0x02000000。

我的函数收到此值,因此我需要确定存储空间和插槽。例如:

0x00000005-是存储器0中的第五个插槽

0x01000009-是存储器1中的插槽9

0x02000002-是存储2中的插槽2

最好的方法是什么?

我目前正在这样做:

uint test = 0x02000005;
bool bit_set_for_01 = (test & (1 << 24)) != 0;
bool bit_set_for_02 = (test & (1 << 25)) != 0;

但是我觉得这不是最好的事情。

马修·沃森

您可以通过编写如下代码使其更具可读性,并稍微提高效率:

public static (int slot, int storage) Storage(int flags)
{
    return ((flags >> 24) & 7, flags & 0xffff);
}

然后:

static void Main()
{
    var item = Storage(0x00000005);
    Console.WriteLine($"Storage: {item.storage}, slot: {item.slot}");

    // Or just for demo:
    Console.WriteLine(Storage(0x01000009));
    Console.WriteLine(Storage(0x02000002));
}

请注意,我在7上面,这给了您3位用于插槽存储(0..7插槽编号)。我也正在使用0xffff,它为插槽提供16位。

您应该调整这些值以反映两个数字所使用的位数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何检查应用程序是否已安装

来自分类Dev

如何检查应用程序或dmg是否已签名?

来自分类Dev

如何检查是否已购买应用程序-CodenameOne

来自分类Dev

如何检查用户是否已安装应用程序?

来自分类Dev

如何检查网络策略是否已应用于 pod?

来自分类Dev

检查是否已安装某些程序的脚本

来自分类Dev

检查是否已安装某些程序的脚本

来自分类Dev

如何检查 Python 中的某些东西是否是 x 折叠的?

来自分类Dev

如何检查HTML中的某些复选框是否已选中?

来自分类Dev

jQuery:如何检查某些复选框是否已选中,并相应地更改样式?

来自分类Dev

如何检查目录是否已安装在光盘X上以及是否未安装目录

来自分类Dev

检查某些实例参数是否已存在模型实例

来自分类Dev

无法检查ruby哈希是否包含已填充的某些字段

来自分类Dev

检查接口eth0是否已启动(已配置)

来自分类Dev

如何检查Android Lollipop中的活动是否已锁定(应用固定)

来自分类Dev

如何检查应用程序窗口中是否已存在视图?

来自分类Dev

Google OAuth-如何检查用户是否已允许访问我的应用程序

来自分类Dev

如何检查Java应用程序发送的邮件是否已读取?

来自分类Dev

如何在JSP中应用检查当前用户是否已登录

来自分类Dev

如何使用jsp检查应用程序是否已安装在移动设备中?

来自分类Dev

如何检查某些IIS模块是否存在

来自分类Dev

如何检查某些表是否为空?

来自分类Dev

如何检查某些表是否为空?

来自分类Dev

如何检查 SecureString 是否包含某些文本?

来自分类Dev

如何检查 url 是否包含某些内容?

来自分类Dev

如何检查普通字符是否已签名?

来自分类Dev

如何检查Windows墙纸是否已更改

来自分类Dev

如何检查是否已添加目标?

来自分类Dev

如何检查指针是否已释放

Related 相关文章

  1. 1

    如何检查应用程序是否已安装

  2. 2

    如何检查应用程序或dmg是否已签名?

  3. 3

    如何检查是否已购买应用程序-CodenameOne

  4. 4

    如何检查用户是否已安装应用程序?

  5. 5

    如何检查网络策略是否已应用于 pod?

  6. 6

    检查是否已安装某些程序的脚本

  7. 7

    检查是否已安装某些程序的脚本

  8. 8

    如何检查 Python 中的某些东西是否是 x 折叠的?

  9. 9

    如何检查HTML中的某些复选框是否已选中?

  10. 10

    jQuery:如何检查某些复选框是否已选中,并相应地更改样式?

  11. 11

    如何检查目录是否已安装在光盘X上以及是否未安装目录

  12. 12

    检查某些实例参数是否已存在模型实例

  13. 13

    无法检查ruby哈希是否包含已填充的某些字段

  14. 14

    检查接口eth0是否已启动(已配置)

  15. 15

    如何检查Android Lollipop中的活动是否已锁定(应用固定)

  16. 16

    如何检查应用程序窗口中是否已存在视图?

  17. 17

    Google OAuth-如何检查用户是否已允许访问我的应用程序

  18. 18

    如何检查Java应用程序发送的邮件是否已读取?

  19. 19

    如何在JSP中应用检查当前用户是否已登录

  20. 20

    如何使用jsp检查应用程序是否已安装在移动设备中?

  21. 21

    如何检查某些IIS模块是否存在

  22. 22

    如何检查某些表是否为空?

  23. 23

    如何检查某些表是否为空?

  24. 24

    如何检查 SecureString 是否包含某些文本?

  25. 25

    如何检查 url 是否包含某些内容?

  26. 26

    如何检查普通字符是否已签名?

  27. 27

    如何检查Windows墙纸是否已更改

  28. 28

    如何检查是否已添加目标?

  29. 29

    如何检查指针是否已释放

热门标签

归档