光标位置 回忆上次内容
  • 上次了解了 新的转义模式
  • \033 逃逸控制字符 escape
  • 这个字符 让字符串 退出标准输出流
  • 进行控制信息的设置
  • 可以设置 光标输出的位置
 
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • ASR33中的ALT MODE
  • 是 今天的ESC键吗????
 

 
添加图片注释,不超过 140 字(可选)
查询文档

 
添加图片注释,不超过 140 字(可选)
 
  • 最开始的时候
  • 还没有esc键
 
  • 使用ctrl + shift + k
  • 实现esc效果
 
  • 后来的键盘
  • 有了 实体的esc键
 
escape 跳出
  • 现在键盘都有这个按键
  • 一般在左上角
  • 用来
  • 退出当前应用/游戏
  • 跳出菜单
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 上图esc在
  • 1 的左下
  • Q 的左边
 
  • esc可以
  • 从当前的纯文字标准输出流里面
  • 逃(escape)出来
  • 进行控制信息的传输
 
键盘的进化过程
  • 后来连接主机(main frame)用的是
  • 终端(terminal)
 
  • 当年最流行的终端 型号是
  • DEC VT100
 

 
添加图片注释,不超过 140 字(可选)
 
  • esc 在1 左边
  • 还没有 出现在最左上的位置
 
位置的变化
  • 玩一些terminal上面的游戏时
  • 可以用 esc 退出游戏环境
  • 进入菜单
  • 进行设置、存盘、读档、退出之类的操作
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 知道 什么时候退
  • 比知道 怎么玩更重要
 
  • 键盘还没有 统一的标准
  • 功能键 F1-F10
  • 在 最左边
 
 
标准键盘
  • 101键盘布局 成为经典
  • 左上角是esc 标准位置
 

 
添加图片注释,不超过 140 字(可选)
 
  • 后来放在 左上角
  • 用边距和F1 拉开距离
  • 体现escape重要性
 
行业标准
  • 键盘开始有了标准布局
  • 并形成了工业标准
 

 
添加图片注释,不超过 140 字(可选)
 
  • 可以在ascii字符集里面
  • 找到esc 这个字符 么?
 
esc
  • 在下图中尝试找到esc

 
添加图片注释,不超过 140 字(可选)
 
  • esc 对应
  • (001 1011)2进制
 
  • 再到ascii应用中
  • 找一下esc?
 
ascii
  • 使用apt
  • 安装ascii这个应用
 
sudo apt install ascii
  • 找到这个字符

 
添加图片注释,不超过 140 字(可选)
 
  • 这个esc对应的是
  • (27)10进制
  • (1B)16进制
 
  • 这个(1B)16进制
  • 是怎么得到的呢?
 
1b
  • 使用hex函数
  • 可以得到
  • 数字的十六进制形式字符串
  • hexadecimal
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 如果是八进制呢?

 
添加图片注释,不超过 140 字(可选)
不同进制 表现形式
  • (1b)16进制
  • 对应着(27)10进制
  • 对应着(33)8进制
 

 
添加图片注释,不超过 140 字(可选)
 
  • 上面的分别是
  • 十六进制形态
  • 十进制形态
  • 八进制形态
 
  • 正如下面

 
添加图片注释,不超过 140 字(可选)
 
  • 不同的形态都可以
  • 用来转义吗?
 
不同形态
  • 不同的转义方式
  • 不影响功能
 

 
添加图片注释,不超过 140 字(可选)
 
  • 使用转义序列
  • 或者16进制转移方式
  • 或者8进制转移方式
 

 
添加图片注释,不超过 140 字(可选)
 
  • 在输出时
  • 没有差别
  • 都是换行效果
 
escape控制码大全
  • CSI 是
  • Control Sequence Introducer
  • 就是esc加[
  • esc就是\033
  • 用的是几进制的形式?
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 可以有各种方式
  • 控制位置
 
\033
  • 八进制的 形式

 
添加图片注释,不超过 140 字(可选)
 
  • \033[nA 光标上移 n 行
  • \033[nB 光标下移 n 行
  • \033[nC 光标右移 n 行
  • \033[nD 光标左移 n 行
  • \033[y;xH 设置光标位置
  • \033[2J 清屏
  • \033[K 清除从光标到行尾的内容
  • \033[s 保存光标位置
  • \033[u 恢复光标位置
  • \033[?25l 隐藏光标
  • \033[?25h 显示光标
光标的自由
  • 输出字符的位置
  • 以前是固定的
  • 仿佛被牢牢锁住
 

 
添加图片注释,不超过 140 字(可选)
 
  • 真的能 挣脱固定位置的锁链 吗?

 
添加图片注释,不超过 140 字(可选)
 
  • 好期待?
总结
  • 本次了解了键盘演化的过程
  • ESC 从 组合键
  • 到 独立按键
 

 
添加图片注释,不超过 140 字(可选)
 
  • ESC 的作用
  • 是 进入控制序列
  • 配置控制信息
 
  • 控制信息
  • \033[y;xH 设置光标位置
  • \033[2J 清屏
 


[oeasy]python0081_[趣味拓展]ESC键进化历史_键盘演化过程_ANSI_控制序列_转义序列_CSI的更多相关文章

  1. duilib WindowImplBase BUG修复 --- 按一次ESC键, 关闭多个窗口

    BUG造成的影响 继承自WindowImplBase的窗口类, 如果没有重写重写ResponseDefaultKeyEvent而由WindowImplBase默认处理的话, 会导致按一次有ESC键, ...

  2. qt之esc键

    Esc键对大家来说实在熟悉不过的了,在Qt中Esc键也会默认的进行一些事件的触发,今天对Esc键测试了一下,突然发现不像我想象的那样,在QDialog中按下Esc键会默认调用reject()方法而不是 ...

  3. QDialog之屏蔽Esc键

    简述 Qt中Esc键会在一些控件中默认的进行一些事件的触发,比如:QDialog,按下Esc键窗口消失.大多数情况下,我们不需要这么做,那么就需要对默认事件进行屏蔽. 简述 源码分析 事件过滤器 事件 ...

  4. MFC非模态对话框中屏蔽ESC键

    个人的编程经验认为:对于非模态对话框,按下ESC键和点击红叉都会响应OnCancel()函数,而不会去响应OnClose()函数. 我们都知道,如果想屏蔽Enter键,只须重写OnOK()函数即可(重 ...

  5. 【Qt】QDialog之屏蔽Esc键【转】

    简述 Qt中Esc键会在一些控件中默认的进行一些事件的触发,比如:QDialog,按下Esc键窗口消失.大多数情况下,我们不需要这么做,那么就需要对默认事件进行屏蔽. 简述 源码分析 事件过滤器 事件 ...

  6. MFC对话框中解决回车键、ESC键退出的方法

    BOOL CYourDlg::PreTranslateMessage(MSG* pMsg) { if(pMsg->message==WM_KEYDOWN&&pMsg->wP ...

  7. MFC对话框屏蔽Enter和ESC键

    MFC对话框屏蔽Enter和ESC键参考:http://www.docin.com/p-122354833.html 方法一重载PreTranslateMessage函数 BOOL CXXDlg::P ...

  8. Oracle在linux下命令行无法使用退格键退格,无法使用上下键切换历史命令的解决办法

    使用xshell等客户端登录oracl时在命令行无法使用退格键也无法使用上下键切换历史命令可以使用rlwrap解决 1,linux环境 2,下载rlwrap wget http://files.cnb ...

  9. 汇编题目:在屏幕中间显示a-z的所有字母,按ESC键改变字符颜色

    在屏幕中显示a-z字母,按ESC键改变字符颜色. ;程序功能:在屏幕中间同一点显示a-z的所有字符 ; 1.使用cpu循环空运行实现延迟 ; 2.按ESC键改变正在循环显示的字符的颜色 ; 3.程序完 ...

  10. 在屏幕中间显示,按ESC键后改变字符的颜色

    程序功能:编写程序在屏幕中间显示“a”~“z”,并可以让人看清,这个任务比较好实现. (1)在b800:[ 160*12+40*2]处存入a的ASCII码.(2)在循环中使用一个10000000000 ...

随机推荐

  1. SASS 运算 (Operations)符的基本使用

    ​ sass 运算符虽然没有像那些编程语言那么强大,但为了更灵活的输出css,也增强了一些运算符的功能,例如赋值运算符.等号操作符.比较运算符.逻辑运算符.字符串运算符...等等,接下来就来详细介绍下 ...

  2. 阿里巴巴 MySQL 数据库之建表规约(一)

    建表规约 强制部分 [强制] 表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint (1 表示是,0 表示否). 说明:任何字段如果为非负数,必须是 ...

  3. Android 13 - Media框架(27)- ACodec(五)

    关注公众号免费阅读全文,进入音视频开发技术分享群! 前面几节我们了解了OMXNodeInstance是如何处理setPortMode.allocateBuffer.useBuffer的,这一节我们再回 ...

  4. 8.26考试总结(NOIP模拟48)[Lighthouse·Miner·Lyk Love painting·Revive]

    告诉我,神会流血吗?--神不会,但你会. 前言 我直接打娱乐赛 T1 Lighthouse 解题思路 子集反演(但是 fengwu 硬要说是二项式反演咱也没法...) 发现其实 \(m\) 的值非常的 ...

  5. Matlab打印运行进度

      在运行matlab程序的过程中,有时候需要实时地掌握程序运行的进度,尤其对于一些耗时较长的循环操作,能够及时地输出运行进度,显得非常有必要.   打印进度条的实现方式就是不断地退格.输出.   退 ...

  6. 使用 Hugging Face 推理终端搭建强大的“语音识别 + 说话人分割 + 投机解码”工作流

    Whisper 是当前最先进的开源语音识别模型之一,毫无疑问,也是应用最广泛的模型.如果你想部署 Whisper 模型,Hugging Face 推理终端 能够让你开箱即用地轻松部署任何 Whispe ...

  7. jquery的折叠动画 渐隐渐显动画

     <button name="up">折叠隐藏</button>     <button name="down">折叠显示& ...

  8. CF98C Help Greg the Dwarf 题解

    CF98C Help Greg the Dwarf 题解 为什么不三分? 首先我们考虑如何求出答案. 如图,考虑设夹角为 \(\theta\),那么可以得到表达式: \[[\cfrac a {\tan ...

  9. kettle从入门到精通 第六十七课 ETL之kettle 再谈kettle阻塞,阻塞多个分支的多个步骤

    场景:ETL沟通交流群内有小伙伴反馈,如何多个分支处理完毕之后记录下同步结果呢?或者是调用后续步骤.存储过程.三方接口等. 解决:使用步骤Blocking step进行阻塞处理即可. 1. 如下流程图 ...

  10. js jquery input radio点击事件

    HTML: <input type="radio" name="myname" value="1" />1 <input ...