计算机具体是怎么输出一个字母的?

来源:百度知道 编辑:UC知道 时间:2024/09/13 02:19:27
计算机具体是怎么输出一个字母的?

其它话啥也不说了,我把一段可以直接编译后运行的C代码贴出来,你运行成功了,再细细分析,说明一下,汉字是用点阵式输出的:

#include "Conio.h"
#include "graphics.h"
#define closegr closegraph

void initgr(void) /* BGI初始化 */
{
int gd = DETECT, gm = 0; /* 和gd=VGA,gm=VGAHI是同样效果 */
registerbgidriver(EGAVGA_driver);/* 注册BGI驱动后可以不需要.BGI文件的支持运行 */
initgraph(&gd, &gm, "");
}

void drawmat(char *mat,int matsize,int x,int y,int color)
/*依次:字模指针、点阵大小、起始坐标(x,y)、颜色*/
{
int i, j, k, n;
n = (matsize - 1) / 8 + 1;
for(j = 0; j < matsize; j++)
for(i = 0; i < n; i++)
for(k = 0;k < 8; k++)
if(mat[j * n + i] & (0x80 >> k)) /*测试为1的位则显示*/
putpixel(x + i * 8 + k, y + j, color);
}

char yi12[]={
/* 以下是 '1' 的 12点阵宋体 字模,24 byte */
0x00,0x00,0x0C,0x00,0x1C,0x00,0x3C,0x00,
0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,
0x0C,0x00,0x3F,0x00,0x00