【问题标题】:HOw would I convert this to work in a c program?我如何将其转换为在 c 程序中工作?
【发布时间】:2015-10-22 10:09:12
【问题描述】:
 byte bigHeart[] = {
  B01100110,
  B11111111,
  B11111111,
  B11111111,
  B01111110,
  B00111100,
  B00011000,
  B00000000};

我正在尝试使用它打印到 LED 屏幕。从 ino 转换为 c 以转换为程序集。不能把它弄到编译器喜欢它从 c 反汇编的地方

【问题讨论】:

  • 它是什么语言?我不是指代码..
  • 从 .ino(arduino 草图,这个工作的地方)到一个 c 文件(我不能让它工作)反汇编成一个 .asm 文件。

标签: c arrays assembly


【解决方案1】:

这应该在 C 中工作。二进制常量被转换为十六进制:

unsigned char bigHeart[] = {
    0x66,
    0xFF,
    0xFF,
    0xFF,
    0x7E,
    0x3C,
    0x00
};

【讨论】:

    【解决方案2】:

    它不在标准 C 中,但如果你可以使用 C++,它是一个提议的 C++14 标准。

    gcc 支持它 - 见这里:

    https://gcc.gnu.org/onlinedocs/gcc/Binary-constants.html

    所以在 gcc 中你可以这样做:

    unsigned char bigHeart[] = {
      0B01100110,
      0B11111111,
      0B11111111,
      0B11111111,
      0B01111110,
      0B00111100,
      0B00011000,
      0B00000000};
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-26
      • 1970-01-01
      • 1970-01-01
      • 2019-04-24
      • 2011-07-09
      相关资源
      最近更新 更多