我可以用二进制打印吗?

发布于 2024-10-05 12:36:33 字数 51 浏览 2 评论 0原文

我有一个需要调试的位图,对我来说以二进制而不是十进制打印数字要容易得多。我可以这样做吗?

I have a bitmap that I need to debug, and it would be much easier for me to printk the number in binary rather than decimal. Can I do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

一百个冬季 2024-10-12 12:36:33

也许尝试十六进制或八进制:

printk("%02X", mybyte);
printk("%03o", mybyte);

Perhaps try hex or octal:

printk("%02X", mybyte);
printk("%03o", mybyte);
淑女气质 2024-10-12 12:36:33

arch/parisc/kernel/traps.c 中有一个打印二进制值的函数,称为 printbinary()。您可以将其复制到您的代码中(或者如果您碰巧在巴黎,则只需链接它)。最好还是将其移动到内核树中的某个通用位置,例如。 lib,并将补丁发送到 LKML。

There is a function to print a binary value in arch/parisc/kernel/traps.c, called printbinary(). You can copy it into your code (or just link it if you happen to be on parisc). Better still move it somewhere generic in the kernel tree, eg. lib, and send a patch to LKML.

戏舞 2024-10-12 12:36:33

printk 使用 sprintf,其行为与 printf 相同。这意味着你不能以二进制形式 printk 。二进制没有格式说明符,因此您必须自己编写该函数。您可以使用循环将数字转换为其二进制表示形式的字符串,然后打印该字符串。

printk uses sprintf which behaves identical to printf. this means you cant printk in binary. There is no format specifier for binary so you will have to write the function your self. You can use a loop to convert a number into a string of its binary representation and then print that string.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文