字符显示器
回忆上次内容
- 简体和繁体的汉字
- 字符数量都超级大
- 感谢王选和陈堃銶等前辈发明了激光照排技术
- 中文排版从此使用上了gb2312编码
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbbb08173285.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 纸张之外
- 显示器是更先进的输出设备
- 计算机是如何在显示器上显示的呢?🤔
点阵字库
- 计算机显示的原理是
- 通过具体的像素点
- 亮或者暗来决定
- 如果墙一面显示器
- 那上面可以显示两个数字字符
- 每个字符使用 3 * 5 像素点阵
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_像素点_02](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbbb85520993.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 这些像素点被编码到字形码当中
- 需要某个字的时候就显示这个字的字形码
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci_03](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbbfd0226258.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
英文字形码
- 英文字形相对简单
- 最低使用 5 * 7 点阵就可以显示一个字符
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci_04](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb37946978.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- LCD1602
- 每行 16 个字符
- 总共 2 行
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci_05](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbc16aa34831.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 字形库并不是很大
- 计算机显示器呢?
显示系统
- 1981年的 IBM兼容机
- 80 * 25 个字符
- 每个字符 9 * 14 个像素
- 经历了
5*7->7*11
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_像素点_06](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbbf57c94824.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 配一块专门的显卡
- IBM Monochrome Display Adapter
- 可以输出到屏幕
- 也可以输出到打印机
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci_07](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbad1b449776.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
字型
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_python_08](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb68c967576.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 仔细看
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci_09](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb99c368053.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 右侧都会空两列
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_像素点_10](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb95f494910.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 这些字形存储在ROM中
显示适配器
- ROM 被放置在显卡上
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_python_11](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbec8e827165.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 一般运行在文字模式
- 按照字符进行渲染
- 字符编码集 是 IBM的 ascii-exterded
- 字型来自ROM
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_python_12](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb162a25511.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 字形中有一些制表符
- 可以显示表格效果
- 虽然如此原始
- 但也能玩游戏
文字冒险游戏
- 文字冒险类游戏
- text adventures
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci_13](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb8ccf79381.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 键盘输入指令
- 走遍地图
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_python_14](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbe91df29151.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
各种字符
- 各种字符都试图在5*7的点阵范围
- 内显示字体
- 字体风格为
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_像素点_15](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb937135250.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 西里尔字符和日本假名
- 如何拥有字型呢?
显示字体
- 拉丁、西里尔甚至日文片假名都实现了这一目标
- 但是中文不可能
- 因为字型实在太复杂
- 只能勉强实现日、白、田等简单文字
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_像素点_16](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbaf8d852344.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 也可以有文字游戏
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_像素点_17](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb4a6351101.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 这颜色
- 是支持VT-100控制序列了吗?
控制序列
- 最开始 只支持
- 下划线
- 加亮
- 翻转
- 隐藏
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_python_18](https://s2.51cto.com/images/blog/202304/03212931_642ad4bb9beac9080.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 可以 魔改 控制亮度吗?
魔改版
- 通过6/7两个管脚控制亮度
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci_19](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbae185166.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 总共四档亮度
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_ci_20](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbaf1525072.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 3/4/5管脚一直保留
- 后来被改成RGB
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_python_21](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbb04d45202.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 可以显示图形吗?
字符模式显示图形
- 理论分辨率 720×350
- 但也仅仅只是理论
- 没能对像素地址编码
- 只能按照坑位填写字形
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_像素点_22](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbc296272978.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 描述图像
- 靠的还是字符方式
- 只能靠 asciiart
- 这种局面下
- 中文如何进入计算机世界呢?
总结
- IBM 将 ASCII 扩展之后
- 规定了 一个字节的字符集
- 并制作了 相应的字形库
![图片描述 [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果_python_23](https://s2.51cto.com/images/blog/202304/03212931_642ad4bbcebab38554.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 这种显示模式和字符大小之下
- 中文该如何进入计算机世界呢?🤔
















