当前位置: 首页 > news >正文

[oeasy]python0081_[趣味拓展]ESC键进化历史_键盘演化过程_ANSI_控制序列_转义序列_CSI

光标位置

回忆上次内容

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

图片描述

  • ASR33中的ALT MODE
    • 是 今天的ESC键吗????🤔

图片描述

查询文档

  • http://bitsavers.org/communications/teletype/33/310B_Vol_1_33_Teletypewriter_Sets_Technical_Manual_Sep74.pdf

图片描述

  • 最开始的时候
    • 还没有esc键
  • 使用ctrl + shift + k
    • 实现esc效果
  • 后来的键盘
    • 有了 实体的esc键

escape 跳出

  • 现在键盘都有这个按键
    • 一般在左上角
    • 用来
      • 退出当前应用/游戏
      • 跳出菜单

图片描述

  • 上图esc
    • 1 的左下
    • Q 的左边
  • esc可以
    • 从当前的纯文字标准输出流里面
    • 逃(escape)出来
    • 进行控制信息的传输

键盘的进化过程

  • 后来连接主机(main frame)用的是
    • 终端(terminal)
  • 当年最流行的终端 型号是
    • DEC VT100

图片描述

  • esc1 左边
    • 还没有 出现在最左上的位置

位置的变化

  • 玩一些terminal上面的游戏时
    • 可以用 esc 退出游戏环境
      • 进入菜单
      • 进行设置、存盘、读档、退出之类的操作

图片描述

  • 知道 什么时候退
    • 比知道 怎么玩重要😄
  • 键盘还没有 统一的标准
    • 功能键 F1-F10
      • 在 最左边

标准键盘

  • 101键盘布局 成为经典
    • 左上角是esc 标准位置

图片描述

  • 后来放在 左上角
    • 用边距和F1 拉开距离
    • 体现escape重要性

行业标准

  • 键盘开始有了标准布局
    • 并形成了工业标准

图片描述

  • 可以在ascii字符集里面
    • 找到esc 这个字符 么?

esc

  • 在下图中尝试找到esc

图片描述

  • esc 对应
    • (001 1011)2进制
  • 再到ascii应用中
    • 找一下esc?

ascii

  • 使用apt
    • 安装ascii这个应用
sudo apt install ascii
  • 找到这个字符

图片描述

  • 这个esc对应的是
    • (27)10进制
    • (1B)16进制
  • 这个(1B)16进制
    • 是怎么得到的呢?

1b

  • 使用hex函数
    • 可以得到
      • 数字的十六进制形式字符串
      • hexadecimal

图片描述

  • 如果是八进制呢?

图片描述

不同进制 表现形式

  • (1b)16进制
    • 对应着(27)10进制
    • 对应着(33)8进制

图片描述

  • 上面的分别是
    • 十六进制形态
    • 十进制形态
    • 八进制形态
  • 正如下面

图片描述

  • 不同的形态都可以
    • 用来转义吗?

不同形态

  • 不同的转义方式
    • 不影响功能

图片描述

  • 使用转义序列
    • 或者16进制转移方式
    • 或者8进制转移方式

图片描述

  • 在输出时
    • 没有差别
    • 都是换行效果

escape控制码大全

  • CSI 是
    • Control Sequence Introducer
    • 就是esc加[
      • esc就是\033
      • 用的是几进制的形式?

图片描述

  • 可以有各种方式
    • 控制位置

\033

  • 八进制的 形式

图片描述

  • \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 显示光标

光标的自由

  • 输出字符的位置
    • 以前是固定的
    • 仿佛被牢牢锁住

图片描述

  • 真的能 挣脱固定位置的锁链 吗?

图片描述

  • 好期待?

总结

  • 本次了解了键盘演化的过程
    • ESC 从 组合键
    • 到 独立按键

图片描述

  • ESC 的作用

    • 是 进入控制序列
    • 配置控制信息
  • 控制信息

    • \033[y;xH 设置光标位置
    • \033[2J 清屏
  • 这到底怎么控制???🤔

  • 来实现这些功能?

  • 我们下次再说!👋

  • 蓝桥->https://www.lanqiao.cn/courses/3584

  • github->https://github.com/overmind1980/oeasy-python-tutorial

  • gitee->https://gitee.com/overmind1980/oeasypython

相关文章:

[oeasy]python0081_[趣味拓展]ESC键进化历史_键盘演化过程_ANSI_控制序列_转义序列_CSI

光标位置 回忆上次内容 上次了解了 新的转义模式 \033 逃逸控制字符 escape 这个字符 让字符串 退出标准输出流进行控制信息的设置 可以设置 光标输出的位置 ASR33中的ALT MODE 是 今天的ESC键吗????🤔 查询文档…...

第十六次CCF计算机软件能力认证

第一题:小中大 在数据分析中,最小值最大值以及中位数是常用的统计信息。 老师给了你 n 个整数组成的测量数据,保证有序(可能为升序或降序),可能存在重复的数据。 请统计出这组测量数据中的最大值、中位数以及最小值&am…...

关于Postman如何配置随请求携带token

文章目录 一些吐槽实际应用 一些吐槽 首先吐槽一下 postman官网的文档说明,真是乱七八糟,一点都不清晰,能不能好好写用户手册啊(比如把用户都当作初始小白) 然后吐槽一下网上铺天盖地让我写js脚本应用全局access toke…...

逆向破解学习-登山赛车

试玩 课程中的内容 Hook代码 import de.robv.android.xposed.XC_MethodHook; import de.robv.android.xposed.XposedHelpers; import de.robv.android.xposed.callbacks.XC_LoadPackage;public class HookComYoDo1SkiSafari2TXYYB_01 extends HookImpl{Overridepublic String p…...

linux下实现生产者和消费者 pv操作

线程同步与线程安全 生产者和消费者特点图示理解编程实现测试结果 生产者和消费者 特点 1.解耦:因为多了一个缓冲区,所以生产者和消费者并不直接相互调用,这样生产者和消费者的代码发生变化,都不会对对方产生影响。这样其实就是把生产者和消…...

十六、遥感影像识别

1、获取遥感影像数据 或用卫星遥感数据,或用无人机低空采集,原始数据加工,最后提供CSV、Excel、GeoTIFF、ENVI等数据文件。 ENVI格式的原始数据文件可以存储多维数据,包括三维数组、二维数组、一维数组甚至标量等。这是因为ENVI格式支持不仅仅是多光谱或高光谱数据…...

源码角度分析@configuration和@component不同

1.configuration是component的内部类,configuration包含component注解。 2.configuration中所有带Bean都会被CGLIB动态代理,调用此配置类中的方法都会返回同一个实例。component不会被代理,调用配置类中的方法都会新建一个实例。 3.configura…...

实现分布式事务:Java与MySQL的XA事务协调

目录 一、什么是XA事务 二、Java中的XA事务支持 三、MySQL的XA事务协调 四、注意事项和最佳实践 五、基于 java 语言的开发工具 六、小结 分布式事务是在跨多个数据库或服务之间保持一致性的重要机制。Java与MySQL的XA(eXtended Architecture)事务…...

如何通过CRM系统进行成功的客户生命周期管理?

吸引新客户,提供无与伦比的服务或商品,以及建立成功的客户关系,是每个企业努力追求的目标。然而,实现这些目标需要的不仅仅是良好的愿景,还需要实施客户生命周期管理流程。 什么是客户生命周期管理? 客户…...

Leetcode 977. 有序数组的平方

题目: Leetcode 977. 有序数组的平方 描述: 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序 思路: 双指针法 数组其实是有序的, 只不过负数平方之…...

vue3中使用toValue

toValue() 是一个在 3.3 版本中新增的 API。它的设计目的是将 ref 或 getter 规范化为值。如果参数是 ref,它会返回 ref 的值;如果参数是函数,它会调用函数并返回其返回值 示例...

阿里云国际版CDN使用教程!

当网站流量达到一定值后,势必会造成网站访问卡堵,这时候阿里云CDN将会一个很好的选择,阿里云 CDN 是由全球分布式边缘节点组成的虚拟网络。阿里云 CDN 可减少源站负载,防止网络拥塞,使用阿里云 CDN 加速图像、小文件、…...

【docker】Dockerfile构建镜像常用指令:

文章目录 一、常用命令:二、注意事项:三、add和copy的区别:【1】ADD 指令支持自动解压缩功能【2】ADD 指令可以从 URL 复制内容【3】 ADD 指令具有隐式的文件拷贝功能 一、常用命令: Dockerfile是一个文本文件,包含了一条条的指令,在基于指定的镜像上&am…...

Java课题笔记~ 会话跟踪

3.1 Cookie 【案例1 记住密码】 实现效果 当勾选“记住密码”复选框时,下次访问登录页面,会自动记住账号,密码信息。 【案例2 上次访问时间】 实现效果 首次登录,显示“欢迎您,XXX” 下次登录,显示“欢迎您…...

HbuildX生成安卓签名证书

HbuildX生成安卓签名证书 安装和配置JRE环境 根据此链接安装和配置JRE环境 生成签名证书 keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystoretestalias是证书别名,可修改为自己想设置的字符,建议…...

在Ruoyi中采用Ajax动态生成Echarts图表实践

前言 在之前博文中,我们讲解了如何使用java在后台进行Echarts的图表生成组件,博文如下: 序号 博客连接1一款基于JAVA开发的Echarts后台生成框架2Ruoyi单体项目与Echarts4.2.1地图集成时的思路及解决办法3解决Ruoyi单体版本集成Echarts多图表时…...

资讯速递 | ArkUI-X 预览版已正式开源!

OpenHarmony项目群技术指导委员会(以下简称“TSC”)-跨平台应用开发框架TSG所孵化项目 —— ArkUI-X,近期已正式开源 ,开发者基于一套主代码,就可以将在OpenHarmony上开发的精美、高性能应用同时运行在Android、iOS等其…...

HTML <select> 标签

实例 创建带有 4 个选项的选择列表: <select><option value ="volvo">Volvo</option><option value ="saab">Saab</option><option value="opel">Opel</option><option value="audi"…...

Flutter:文件上传与下载(下载后预览)

Dio dio是一个强大的Dart Http请求库&#xff0c;提供了丰富的功能和易于使用的API&#xff0c;支持文件上传和下载。 这个就不介绍了&#xff0c;网上有很多的封装案例。 background_downloader 简介 适用于iOS&#xff0c;Android&#xff0c;MacOS&#xff0c;Windows和L…...

[前端系列第6弹]Ajax简明教程:轻松实现Web页面的异步交互

在这篇文章中&#xff0c;我将介绍Ajax的基本概念、原理、优缺点、实现方法和应用场景&#xff0c;以及如何使用它来实现Web页面的异步交互。还将给一些简单而实用的例子&#xff0c;让你可以跟着我一步一步地编写自己的Ajax代码。 目录 一、什么是Ajax 二、如何使用Ajax &a…...

我用一个工具将Claude代码探索时间和成本降低了 90%

每个 Claude Code 用户&#xff0c;大概都熟悉这种崩溃感。 你打开一个全新的会话&#xff0c;输入一个看起来很简单的问题&#xff0c;然后眼睁睁看着它开始“考古”&#xff1a; ⏺ Explore(“How does the extension host communicate with the main process?”)⎿ Done (5…...

XHS-Downloader:小红书内容采集与无水印下载的完整技术指南

XHS-Downloader&#xff1a;小红书内容采集与无水印下载的完整技术指南 【免费下载链接】XHS-Downloader 小红书&#xff08;XiaoHongShu、RedNote&#xff09;链接提取/作品采集工具&#xff1a;提取账号发布、收藏、点赞、专辑作品链接&#xff1b;提取搜索结果作品、用户链接…...

动态切换标题图片的顶部边距:基于导航栏状态的 CSS 样式控制

本文介绍如何通过 JavaScript 动态检测导航栏是否启用 navbar-fixed 类&#xff0c;并据此为 .title-img 元素添加或移除 margin-top: 20%&#xff0c;实现响应式布局适配。核心在于精准监听类名变化并执行样式切换&#xff0c;避免硬编码与冗余逻辑。 本文介绍如何通过 j…...

利用ADI官方HDL仓库加速FPGA系统开发:从IP核到完整参考设计

1. 项目概述&#xff1a;从GitHub仓库到可复用的数字设计资产在数字电路设计领域&#xff0c;无论是做FPGA原型验证、ASIC前端设计&#xff0c;还是嵌入式系统开发&#xff0c;我们常常面临一个基础且耗时的问题&#xff1a;如何快速、可靠地驱动各种外围芯片&#xff1f;从高速…...

基于大语言模型的智能PPT生成:Agent架构、提示词工程与Python-pptx实践

1. 项目概述&#xff1a;PPTAgent&#xff0c;一个用AI重构PPT制作的智能体如果你和我一样&#xff0c;经常被制作PPT这件事搞得焦头烂额&#xff0c;那么“PPTAgent”这个项目绝对值得你花时间了解一下。这不仅仅是一个简单的PPT生成工具&#xff0c;而是一个由开源社区驱动的…...

【Redis实战】分布式锁的N种实现方案对比与避坑指南

【Redis实战】分布式锁的N种实现方案对比与避坑指南在高并发场景下&#xff0c;分布式锁是保证数据一致性的关键技术。本文将从原理到实战&#xff0c;详细讲解分布式锁的各种实现方案。一、为什么需要分布式锁&#xff1f;假设这样一个场景&#xff1a;双十一秒杀活动&#xf…...

别把你的命,全拴在那个“单点故障”的工位上

前几天周五晚上&#xff0c;外出回家&#xff0c;正好赶上晚高峰。 挤在地铁1号线里&#xff0c;我旁边站着个小伙子&#xff0c;西装淋得半湿&#xff0c;怀里紧紧抱着个电脑包。他那双眼直勾勾地盯着手机屏幕&#xff0c;屏幕上是密密麻麻的Excel表格。地铁一晃&#xff0c;…...

嵌入式C代码合规性断崖式升级(2026 RTOS新规深度拆解)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;嵌入式C代码合规性断崖式升级的背景与动因 近年来&#xff0c;ISO/IEC 17961&#xff08;C Secure Coding Standard&#xff09;、MISRA C:2023 和 AUTOSAR C14 子集等标准加速演进&#xff0c;叠加功能…...

高性能网络系统中的内存技术演进与优化实践

1. 高性能网络系统中的内存技术演进在网络流量爆炸式增长的今天&#xff0c;网络设备的内存子系统正面临前所未有的性能挑战。作为一名长期从事网络硬件设计的工程师&#xff0c;我见证了从传统SDRAM到当今高速内存技术的完整演进历程。现代100Gbps及更高速率的网络接口卡&…...

AtlasPatch技术解析:高效处理WSI图像的AI预处理方案

1. 计算病理学中的WSI预处理挑战 全切片图像&#xff08;Whole Slide Image, WSI&#xff09;已成为现代病理学数字化转型的核心载体。这些高分辨率数字扫描图像通常达到数十亿像素级别&#xff0c;完整保留了玻璃切片从宏观组织架构到微观细胞形态的所有信息。然而&#xff0c…...