[oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果
- 简体和繁体的汉字
- 字符数量都超级大
- 感谢王选和陈堃銶等前辈发明了激光照排技术
- 中文排版从此使用上了gb2312编码

- 纸张之外
- 显示器是更先进的输出设备
- 计算机是如何在显示器上显示的呢?
- 计算机显示的原理是
- 通过具体的像素点
- 亮或者暗来决定
- 如果墙一面显示器
- 那上面可以显示两个数字字符
- 每个字符使用 3 * 5 像素点阵

- 这些像素点被编码到字形码当中
- 需要某个字的时候就显示这个字的字形码

- 英文字形相对简单
- 最低使用 5 * 7 点阵就可以显示一个字符

- LCD1602
- 每行 16 个字符
- 总共 2 行

- 字形库并不是很大
- 计算机显示器呢?
- 1981年的 IBM兼容机
- 80 * 25 个字符
- 每个字符 9 * 14 个像素
- 经历了 5*7 -> 7*11

- 配一块专门的显卡
- IBM Monochrome Display Adapter
- 可以输出到屏幕
- 也可以输出到打印机


- 仔细看

- 右侧都会空两列

- 这些字形存储在ROM中
- ROM 被放置在显卡上

- 一般运行在文字模式
- 按照字符进行渲染
- 字符编码集 是 IBM的 ascii-exterded
- 字型来自ROM

- 字形中有一些制表符
- 可以显示表格效果
- 虽然如此原始
- 但也能玩游戏
- 文字冒险类游戏
- text adventures

- 键盘输入指令
- 走遍地图

- 各种字符都试图在5*7的点阵范围
- 内显示字体
- 字体风格为

- 西里尔字符和日本假名
- 如何拥有字型呢?
- 拉丁、西里尔甚至日文片假名都实现了这一目标
- 但是中文不可能
- 因为字型实在太复杂
- 只能勉强实现日、白、田等简单文字

- 也可以有文字游戏

- 这颜色
- 是支持VT-100控制序列了吗?
- 最开始 只支持
- 下划线
- 加亮
- 翻转
- 隐藏

- 可以 魔改 控制亮度吗?
- 通过6/7两个管脚控制亮度

- 总共四档亮度

- 3/4/5管脚一直保留
- 后来被改成RGB

- 可以显示图形吗?
- 理论分辨率 720×350
- 但也仅仅只是理论
- 没能对像素地址编码
- 只能按照坑位填写字形

- 描述图像
- 靠的还是字符方式
- 只能靠 asciiart
- 这种局面下
- 中文如何进入计算机世界呢?
- IBM 将 ASCII 扩展之后
- 规定了 一个字节的字符集
- 并制作了 相应的字形库

- 这种显示模式和字符大小之下
- 中文该如何进入计算机世界呢?
- 我们下次再说!
[oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果的更多相关文章
- GB2312编码(为什么要加2020H、8080H,外码→内码→交换码→字形码)
为什么要加上2020H和8080H? 区位码.内码.国标码怎么转换非常简单,但是令人迷惑的是为什么要那么转换?这种转换不可能平白无故地那样转换! 我搜索很多资料,找到最好的解释,总结如下: 首先,注意 ...
- Asp.Net Web Api 2 实现多文件打包并下载文件示例源码_转
一篇关于Asp.Net Web Api下载文件的文章,之前我也写过类似的文章,请见:<ASP.NET(C#) Web Api通过文件流下载文件到本地实例>本文以这篇文章的基础,提供了Byt ...
- OpenCV2.源码_编译&调试
1.VS 调试第三方库源码 - writeeee的专栏 - CSDN博客.html(https://blog.csdn.net/writeeee/article/details/82692770) Z ...
- pytest框架插件源码_关于钩子方法调用部分的简单理解(pytest_runtest_makereport)
前言: 因为想不明白写的pytest_runtest_makereport里的yield是怎么把结果传出来的?pytest是怎么调用的我们自己写的pytest_runtest_makereport方法 ...
- spring源码_下载以及转入eclipse (2016-11-08)
本例spring源码版本是4.3.0的, 所以jdk需要准备1.8的(不同版本源码要求的jdk不一样) 1.8版本myeclipse10无编译环境,只有运行环境,出现点问题,下载最新版本的Eclips ...
- Android 8.1 源码_启动篇(二) -- 深入研究 zygote(转 Android 9.0 分析)
前言 在Android中,zygote是整个系统创建新进程的核心进程.zygote进程在内部会先启动Dalvik虚拟机,继而加载一些必要的系统资源和系统类,最后进入一种监听状态.在之后的运作中,当其他 ...
- Android 8.1 源码_启动篇(一) -- 深入研究 init(转 Android 9.0 分析)
前言 init进程,它是一个由内核启动的用户级进程,当Linux内核启动之后,运行的第一个进程是init,这个进程是一个守护进程,确切的说,它是Linux系统中用户控件的第一个进程,所以它的进程号是1 ...
- Spring中的IOC_源码_随笔
Spring ioc 叫控制反转,也就是把创建Bean的动作交给Spring去完成. spring ioc 流程大致为 定位-> 加载->注册 先说几个比较有意思的点 1.Spring中 ...
- 9. http协议_响应状态码_页面渲染流程_路由_中间件
1. http协议 超文本传输协议 协议详细规定了 浏览器 和 万维网服务器 之间互相通信的规则 客户端与服务端通信时传输的内容我们称之为报文(请求报文.响应报文) 常见的发送 get 请求方式 在浏 ...
- CleanMyMac 4破解版-最强中文版_破解版_激活码_注册码
最新版CleanMyMac 4中文版本已经发布了,也受到了广大用户的喜爱.众所周知, 注册码是开启软件的钥匙,在获取软件安装包之后需要有效的注册码才能激活软件.但是关于CleanMyMac 4注册码的 ...
随机推荐
- OpenAI“杀疯了”,GPT–4o模型保姆级使用教程!一遍就会!
5月14日凌晨1点,OpenAI发布了名为GPT-4o 最新的大语言模型,再次引领了人工智能领域的又一创新浪潮,让整个行业都为之震动. 据OpenAI首席技术官穆里-穆拉提(Muri Murati)表 ...
- golang select 和外层的 for 搭配
select语句通常与for循环搭配使用,但并不是必须的. 在某些情况下,select可能会直接放在一个独立的goroutine中,没有外层的for循环. 这通常发生在你知道只会有一次或有限次操作的情 ...
- 基于webapi的websocket聊天室(番外一)
上一篇我已经实现了聊天室,并且在协议中实现了4种类型的消息传输.其实还可以添加video,audio,live等等类型. 不过假如把目前的协议看作RCP1.0版的话,这个版本就只支持有限的4种消息.精 ...
- 三:nacos的配置中心
配置中心的使用: 编辑当前项目的pom.xml,加入必要的依赖配置 <!-- spring-cloud-alibaba-dependencies 依赖同注册中心 --> <depen ...
- 关于对于Java中Entity以及VO,以及DTO中Request对象序列化的学习
关于 Serializable的探讨 前提引入 是由于软件测试上有同学提到说,什么该字段在程序刚运行时,导致jvm激增,所以吸引了我的注意 回顾代码 MybatisPlus Generator自动生成 ...
- Maven到底是什么
Maven 是一个项目管理工具,它最主要的两个功能就是:依赖管理和项目构建. 何为依赖管理 在传统项目中,我们的项目如果需要第三方提供的库就必须得去官网上下载,有了Maven我们只需要在pom文件 ...
- redis安装和基础使用
redis安装 mkdir /server/tools -p cd /server/tools echo 'PATH=/usr/local/redis/src:$PATH' >>/etc/ ...
- c# .net mvc 使用百度Ueditor富文本框上传文件(图片,视频等)
使用背景: 项目中需要用的富文本框去上传视频,图片的话大部分都是可以的.相对来说,国外的富文本框很成熟.但鉴于文档是英语,这里使用了百度的富文本框. 采用的api的方式,调用接口进行上传文件.话不多说 ...
- C#/.NET/.NET Core优秀项目和框架2024年5月简报
前言 公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(每周至少会推荐两个优秀的项目和框架当然节假日除外),公众号推文中有项目和框架的介绍.功能特点.使用方式以及部分功能截图 ...
- kettle从入门到精通 第五十七课 ETL之kettle调用存储过程
1.之前有个同学说他使用kettle执行一坨sql语句时,kettle直接卡死掉了.我给出的建议是使用存储过程,果不其然使用存储过程顺利解决问题. 今天我们一起来学习下kettle如何调用存储过程,这 ...