C中二进制文件的解码器

Decoder for binary files in C

我需要解码二进制文件中的文本并将其与程序中的文本(用户编写的)进行比较,我还需要将文本解码为二进制文本。 示例:

  1. 011011000110111101101100 => 一些文本
  2. sometext => 011011000110111101101100

应该是2个函数。 我该怎么做?

我明白了,所以这是它的工作原理:

  • 你需要一个函数可以转换8位二进制数(可以在数字后加'0'总是8位),你得到的每个数字都可以用ASCII转换table,例如l是108 , 我假设你已经知道
  • 另一个函数可以将 ASCII 字符转换为 8 位二进制数

二进制转十进制:

01101100 -> 0.2^0 + 0.2^1 + 1.2^2 + 1.2^3 + 0.2^4 + 1.2^5 + 1.2^6 + 0.2^7

非常简单

十进制转二进制: 得到余数和商:

108/2 : q = 54 r = 0
54/2  : q = 27 r = 0
27/2  : q = 13 r = 1
13/2  : q = 6  r = 1
6/2   : q = 3  r = 0
3/2   : q = 1  r = 1

取最后一个商和所有其余部分:1101100,加一个 0 得到 8 位:01101100