我一直想知道如何使用x86_64
程序集逐字节读取二进制文件。假设我想将这些字节解释为无符号整数(从0
到255
)。例如,对于像C0 01 A2
这样的文件,我希望我的程序的退出值为356
我找到了一个简单的cat
实现的有用示例,右here。它以2048
个字节的块读取文件并打印它们。非常直截了当。
但是,我的文件可以包含零字节。当在字符串缓冲区中看到时,零字节表示字符串的结束,我无法通过该方法检测到它。
这样做有一种优雅(并且希望不是非常低效)的方式吗?也许我正在监督一个简单的解决方案?