c/c++语言开发共享是否可以在1和0中查看二进制文件?

我的意思是,有可能用C编写程序,编译它然后看看它在零和零中的样子吗? 像1337黑客那样行事并假装实际用零和零编程会很酷:p。

    你可以使用xxd :

    xxd -b filename 
      C: opt  bin> xxd -b ctags.exe | 头  0000000:01001101 01011010 10010000 00000000 00000011 00000000 MZ ....  0000006:00000000 00000000 00000100 00000000 00000000 00000000 ......  000000c:11111111 11111111 00000000 00000000 10111000 00000000 ......  0000012:00000000 00000000 00000000 00000000 00000000 00000000 ......  0000018:01000000 00000000 00000000 00000000 00000000 00000000 @ .....  000001e:00000000 00000000 00000000 00000000 00000000 00000000 ......  0000024:00000000 00000000 00000000 00000000 00000000 00000000 ......  000002a:00000000 00000000 00000000 00000000 00000000 00000000 ......  0000030:00000000 00000000 00000000 00000000 00000000 00000000 ......  0000036:00000000 00000000 00000000 00000000 00000000 00000000 ...... 

    只是为了让这个更多的编程相关:

     #include  #include  const char *lookup[] = { /* 0 1 2 3 4 5 6 7 */ "0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", /* 8 9 ABCDEF */ "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111", }; int main(int argc, char *argv[]) { FILE *fin; int c; size_t bytes_read = 0; if ( argc != 2 ) { fputs("No filename provided", stderr); exit(EXIT_FAILURE); } fin = fopen(argv[1], "rb"); if ( !fin ) { fprintf(stderr, "Cannot open %sn", argv[1]); exit(EXIT_FAILURE); } while ( EOF != (c = fgetc(fin)) ) { printf("%s", lookup[ (c & 0xf0) >> 4 ]); printf("%s", lookup[ (c & 0x0f) ]); bytes_read += 1; if ( bytes_read % 9 == 0 ) { puts(""); } } fclose(fin); return EXIT_SUCCESS; } 

    输出:

      C: Temp> binary.exe c: opt  bin  ctags.exe | 头  010011010101101010010000000000000000001100000000000000000000000000000100  000000000000000000000000111111111111111100000000000000001011100000000000  000000000000000000000000000000000000000000000000010000000000000000000000  000000000000000000000000000000000000000000000000000000000000000000000000  000000000000000000000000000000000000000000000000000000000000000000000000  000000000000000000000000000000000000000000000000000000000000000000000000  000000000000000000000000000000000000000000000000111000000000000000000000  000000000000111000011111101110100000111000000000101101000000100111001101  001000011011100000000001010011001100110100100001010101000110100001101001  011100110010000001110000011100100110111101100111011100100110000101101101 

    使用hexdump或hex编辑器以hex字节查看二进制文件。

    hex只是查看二进制文件的一种更紧凑的方式。 每个hex数字(0-F)代表四位。 例如,十进制的0xF是15,二进制的是1111。

    你的意思是你不能进行编译并将操作码翻译成二进制文件?

    实际上,我学习编程的其中一台计算机必须通过前面板开关切换自举代码。 你需要输入足够的代码才能让它从8“软盘驱动器启动加载程序并加载操作系统。你可以在这里看到一张图片。我确实需要知道启动加载程序操作码的二进制文件。

    当然有可能。 您可以使用此post中的信息编写自己的查看器。

      以上就是c/c++开发分享是否可以在1和0中查看二进制文件?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/544736.html

      (0)
      上一篇 2021年1月9日
      下一篇 2021年1月9日

      精彩推荐