Dependencies 如何以独立于机器的方式创建掩码?

Dependencies 如何以独立于机器的方式创建掩码?,dependencies,bitwise-operators,bit,bitmask,independent-set,Dependencies,Bitwise Operators,Bit,Bitmask,Independent Set,所以我在练习一些编程面试问题,偶然发现了这条建议“了解如何使用口罩,并以独立于机器的方式创建口罩”。但它并没有说明机器依赖和机器无关掩模之间的区别 我通常只算出提供我想要的掩码的整数,例如,如果我只需要最后4位,我会: int y = x & 15; 我不明白为什么这会依赖于机器,如果是的话 那么,创建独立于机器的掩码的示例是什么?创建依赖于机器的掩码的示例是什么 也许他们所说的是,如果你需要一个掩码来表示不是整数的东西,在这种情况下,我的方法就不起作用了(除了整数,我从来都不需要掩码

所以我在练习一些编程面试问题,偶然发现了这条建议“了解如何使用口罩,并以独立于机器的方式创建口罩”。但它并没有说明机器依赖和机器无关掩模之间的区别

我通常只算出提供我想要的掩码的整数,例如,如果我只需要最后4位,我会:

int y = x & 15;
我不明白为什么这会依赖于机器,如果是的话

那么,创建独立于机器的掩码的示例是什么?创建依赖于机器的掩码的示例是什么

也许他们所说的是,如果你需要一个掩码来表示不是整数的东西,在这种情况下,我的方法就不起作用了(除了整数,我从来都不需要掩码)

我相信这里的“机器独立”意味着你的代码应该执行所需的操作(例如掩码和移位)不管它运行在哪个编译器和/或机器上。例如,不同的编译器和系统以不同的方式处理数据类型的长度。如果在int上写入一个假定大小为4字节的位移位,这将不是“机器独立”的。有些编译器将整数视为8字节