汉字取模原理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

汉字的取模原理手工取模原理(详解)

因本人这个取模原理也搞了一天,网上也没有现成的资料,包括纵向和横向取模,对照网上各位所说慢慢摸索,最终把原理搞清楚,最后写出来给大家参照一下。

这里,我们先以英文和中文来说明,说明前我们先统一标准。

标准1:显示大小为16*16,显示的像素为1,不显示的为0。

标准2:显示大小为16*16,显示的像素为0,不显示的为1.

有的显示要“字节倒序”,主要是显示器的要求不一样。

这里我们用标准1.解说以下图片:

1.英文”A”字的取模,我们这里采用横向,横向取模为“高位在左”,方式是按单片机的内存每一位的排列,排列方式为“7.6.5.4.3.

2.1.0”,显示的为1,不显示的为0,这里文字大小采用小4,占用像素为8*16。

1.1.我们按图把要显示的字用“1”填起来,图片显示为用1做的“A”,再把没有显示的用“0”填起来。

1.2.

我们

从Y

轴的

16

到Y

轴第

1

行,一行一行的取,取8位二进制码,每行方向从左到右取数,再把二进制码用“8421”码转换成16进制码,分别是。

二进制汇编十六进制C语言十六进制

Y轴第16行00000000B 00H 0X00

Y轴第15行00000000B 00H 0X00

Y轴第14行00000000B 00H 0X00

Y轴第13行00010000B 10H 0X10

Y轴第12行00010000B 10H 0X10

Y轴第11行00011000B 18H 0X18

Y轴第10行00101000B 28H 0X28

Y轴第9行00101000B 28H 0X28

Y轴第8行00100100B 24H 0X24

Y轴第7行00111100B 3CH 0X3C

Y轴第6行01000100B 44H 0X44

Y轴第5行01000010B 42H 0X42

Y轴第4行01000010B 42H 0X42

Y轴第3行11100111B 0E7H 0XE7

Y轴第2行00000000B 00H 0X00

Y轴第1行00000000B 00H 0X00

整理汇编为; DB 00H,00H,00H,10H,10H,18H,28H,28H,24H,3CH,44H,42H,42H,0E7H,00H,00H

1.3.英文的纵向取模,纵向取模的高位在下。先取上半部份,取完再取下半部份,取数为X 轴一列一列取。每列取数从下到上,也就是按Y轴箭头方向。

二进制汇编十六进制

上半部份,Y轴9到16对应部份

X轴第1列00000000B 00H

X轴第2列00000000B 00H

X轴第3列11000000B 0C0H

X轴第4列00111000B 38H

X轴第5列11100000B 0E0H

X轴第6列00000000B 00H

X轴第7列00000000B 00H

X轴第8列00000000B 00H

下半部份,Y轴1到8对应部份

X轴第1列00100000B 20H

X轴第2列00111100B 3CH

X轴第3列00100011B 23H

X轴第4列00000010B 02H

X轴第5列00000010B 02H

X轴第6列00100111B 27H

X轴第7列00111000B 38H

X轴第8列00100000B 20H

DB 00H,00H,0C0H,38H,0E0H,00H,00H,00H,20H,3CH,23H,02H,02H,27H,38H,20H

2.看过了字母取模过后,现在我们来说一下汉字取模就相对容易了,汉字为16*16像素,比字母宽一倍。只不过取的方向要注意一点。

2.1.现在我们先来说一下汉字的横向取模原理,模向取模时,高位在左。我们先用图分解比较直观。因为分开说不直观,所以我把图用直角坐标分为4个象限,如下图:

横向取模,先取第二,第一象限,取完算半个字,再取第3,第4象限,取完后组成一个中文字。我们先把图填上1和0字。

上半部份,第二象限和第一象限对应部份

序目坐标二进制16进制

1.X(-8到0),Y(8)00100000B 20H

2.X(0到8),Y(8)00000000B 00H

3.X(-8到0),Y(7)00010000B 10H

4.X(0到8),Y(7)00000000B 00H

5.X(-8到0),Y(6)00010111B 17H

6.X(0到8),Y(6)11111100B 0FCH

7.X(-8到0),Y(5)00000010B 02H

8.X(0到8),Y(5)00001000B 08H

9.X(-8到0),Y(4)10000010B 82H

10.X(0到8),Y(4)00001000B 08H

11.X(-8到0),Y(3)01001001B 49H

12.X(0到8),Y(3)00010000B 10H

13.X(-8到0),Y(2)01001001B 49H

14.X(0到8),Y(2)00010000B 10H

15.X(-8到0),Y(1)00010001B 11H

16.X(0到8),Y(1)00010000B 10H

上半部份写完,现说下半部份,为了好看把下半部份填上数字0和1,见下图:

相关文档
最新文档