[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注册码的 ...
随机推荐
- 前端使用 Konva 实现可视化设计器(11)- 对齐效果
这一章补充一个效果,在多选的情况下,对目标进行对齐.基于多选整体区域对齐的基础上,还支持基于其中一个节点进行对齐. 请大家动动小手,给我一个免费的 Star 吧~ 大家如果发现了 Bug,欢迎来提 I ...
- Vue 3.3 发布
本文为翻译 原文地址:宣布推出 Vue 3.3 |The Vue Point (vuejs.org) 今天我们很高兴地宣布 Vue 3.3 "Rurouni Kenshin" 的发 ...
- 显示锁之ReentrantLock
ReentrantLock显示锁 在Java 1.5之前,协调对共享对象的访问可以使用的机制只有synchronized和volatile两种.Java1.5增加了一种新的机制:ReentrantLo ...
- 运算符优先级 JAVA11
**运算符优先级 ** 规律:算术运算符优先级较高,关系和逻辑运算符优先级较低.多数运算符具有左结合性,单目运算符.三目运算符.赋值运算符具有右结合性. 运算符的优先级 举例 使用优先级为 1 的小括 ...
- Android 12(S) MultiMedia Learning(一)开篇
这个系列将会作为自己学习android多媒体的笔记,如果有错误请帮忙指正. 本系列的学习均基于Android 12(S),代码来源:http://aospxref.com/
- 基于 Kubernetes 的 CICD 基础设施即代码
在上一篇基于 Kubernetes 的基础设施即代码一文中,我概要地介绍了基于 Kubernetes 的 .NET Core 微服务和 CI/CD 动手实践工作坊使用的基础设施是如何使用代码描述的,以 ...
- leetcode阶段总结
1.目前已经刷了大概200道题目 主要使用的语言是python,刷完之后,发现盲写部分语法依然记不住: 以后刷算法保持一个原则,一定使用不提示代码的工具,纯文本编写,尽量不debug 2.后续尽量使用 ...
- 运行报错:找不到或无法加载主类 com.xxx.Application
springboot 项目下载到本地,用 idea 运行报错找不到或无法加载主类. 原因 项目内还没有编译,所以找不到主类文件,需要先编译项目. 解决方案 执行 mvn 编译命令: mvn compi ...
- babel 基础概念 & 从零到一写一个 babel 插件
babel 基础概念 简单来说,做语法转换兼容的, 复杂一点的说,babel可以将我们写的 ES6+ 的Javascript语法转换为向后兼容的语法,以便能够在旧版本的浏览器或者其他环境运行. bab ...
- 警告: BASE64Decoder是内部专用 API, 可能会在未来发行版中删除
警告: BASE64Decoder是内部专用 API, 可能会在未来发行版中删除 import org.apache.commons.codec.binary.Base64; public class ...