咱们来看这个图
1.一个数码管一共有8个二级管组成,它们的编号分别为DP G F E D C B A ,通过这些编号控制灯的暗灭来形成一个字符
2.数码管分为共阳和共阴两种形式,简单理解就是,共阳就是所有数码管初始值为8个0,共阴就是所有数码管初始值为8个1。
3.需要灭掉不同的二极管组成我们想要的字符,共阳0变1,共阴1变0
假设H这个字符是共阳数码管显示出来的那么数码管初始就是00000000,现在需要灭掉DP D A才能形成H
初始是这样的
注意:二进制每一位对应的字母编号顺序为DP,G,F,E,D,C,B,A !!!(不是顺序)
DP | G | F | E | D | C | B | A | |
H | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
灭掉DP D A变成下图了
DP | G | F | E | D | C | B | A | |
H | 1 | 0 | 0 | 0 | 1 | 0 | 0 |
1 |
H 二进制 10001001 对应十六进制 89
-
例题实验吧CTF数码管:
解题思路:红色共阳,蓝色共阴
第一个字母红色共阳(二进制全是零0):根据编号只有A,D,DP灭掉(改变),所以二进制表示为:1000 1001 十六进制为 89
dp | g | f | e | d | c | b | a | |
共阳初始 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
形成H | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
同理第二个共阴二进制全1,只有B,C,DP改变,E 所以二进制位为:0111 1001 十六进制为:79
同理第三个共阳二进制全0,只有A,B,C,G,DP改变,L的二进制为:1100 0111 十六进制为:C7
同理第四个共阴二进制全1,只有A,B,C,G,DP改变,L 所以二进制位为:0011 1000 十六进制为:38
同理第五个共阳二进制全0,只有G,DP改变,O的二进制为:1100 0000 十六进制为:C0
所以得到flag:{***********}
-
附共阳共阴数码管部分字符表: