笔试题(有图):请教如何改进嵌入式系统的点阵字库算法,小弟我如何一点头绪都没有
笔试题(有图):请问怎么改进嵌入式系统的点阵字库算法,我怎么一点头绪都没有网上查了,没结果[解决办法]12X1
笔试题(有图):请问怎么改进嵌入式系统的点阵字库算法,我怎么一点头绪都没有
网上查了,没结果
[解决办法]
12X16,一个字符占24个字节必须的啊
如果1024个字符不重复,那不大能省空间了
[解决办法]
[解决办法]把点阵图换成矢量图,定义一个矢量集,然后用这个矢量集中的矢量表示字符,应该会小些。或者对上面的点阵进行压缩存储。
[解决办法]一个字节(byte)有8个2进制位(bit),那么12*16的2进制矩阵总共的空间为12*16=192(bit)=24(byte)。
[解决办法]压缩的办法当然有,比方说将字模拦腰对半切开,分成2个12*8的组合体。然后每一列就是长度为一个字节的整数(即0~127)。一个字则可以用24个整数来表示。这样一来,1024个字可以用24k个整数来表示。自然的,里面有很多整数是重复的。用较短的编码来表示重复次数多的数字,就可以达到压缩的目的--譬如用熵编码。
[解决办法]我觉得这个要看字符集的大小,如果是ascii,只需要256个,那么可以存储256个点阵,而图形则用索引(每个索引8bit)存储,这样1024个字符是
(12*16)*256 + 8*1024 = 24 byte * 256 + 1 byte * 1024 = 7 k
如果字符集较大(例如Unicode),那么这种存储方法就不合算了。可以考虑压缩存储,例如简单的,看A只占用中间的一块,那么就分别用4个4bit存储左上角和右下角的(x,y)坐标,再存储中间的bit。
0010 0010 1011 1000 // 坐标
接着存储中间A的所占用部分的那个编码。
[解决办法]