0

大家好,基本上我正在创建一个chip8模拟器,但我在实现绘图指令时遇到了一些麻烦。芯片 8 的屏幕为 64x32 我有一个大小为 32 的 uint64_t 数组。芯片 8 使用单色显示,其中每个位是该像素是打开还是关闭。所以现在我遍历该数组以获取该 64 位行。问题是我只想对与 xcordinate 及其之后的 8 位进行异或运算。不是整个 64 位行,只是 xcordinate 和它之后的 7 位以及我拥有的精灵字节。

到目前为止,这是我的代码。

  for(int i = 0; i < num_bytes; i++)
  {
    byte byte_to_draw = memory[registers->I + i];
    for(int j = 0; j < 8; j++)
    {
      // 64 bit number each bit representing on or off
      uint64_t current_row = screen[register_value_y - i];

// I want to xor here
      
    }
  }

4

0 回答 0