📄 bytesub.cpp
字号:
#include<stdio.h>
unsigned char m[8]={0xf1,0xe3,0xc7,0x8f,0x1f,0x3e,0x7c,0xf8},x,y,j,n,a;
unsigned char gf(char s,char d)
{ unsigned char m,n,r;
for(n=1,m=s,r=0;n;n<<=1)
{ if(n&d) r^=m;
if(!(128&m)) m<<=1;
else m=(m<<=1)^27;
}
return r;
}
unsigned char igf(char a)
{ unsigned char ai,i;//scanf("%x",&a);
j=gf(a,a) ;
for(i=0,ai=1;i<7;i++)
{ ai=gf(ai,j);
j=gf(j,j);
}
return ai;//printf("\n%x %x %x",a,ai,gf(a,ai));
}
main()
{ scanf("%x",&a);
x=igf(a);
for(j=8;j;)
{ y<<=1;
n=m[--j]&x;
for(;n;n>>=1) y^=1&n;
}
printf("\n%x\n",y^=99);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -