草庐IT

【《硬件架构的艺术》读书笔记】08 消抖技术

8.1简介在电子设备中两个金属触点随着触点的断开闭合便产生了多个信号,这就是抖动。消抖使用来确保每一次断开或闭合触点时只有一个信号起作用的硬件设备或软件。(说人话就是每次断开闭合只对应一个操作)。抖动在某些模拟和逻辑电路中可能产生问题,因为这些电路反应太快会将开关脉冲误当作数据流。时序逻辑数字电路特别容易收到触点抖动的影响。开关抖动产生的电压波形干扰正常逻辑电路的振幅和时序规格要求。结果是亚稳定性、竞争、小脉冲和故障等问题导致电路失效。8.2开关行为   若开关用于开灯或启动风扇马达,则触点抖动基本没有影响,但是用作数字计数器、个人计算器或微处理器等设备的输入,由于触点抖动就会产生问题。计数器

【《硬件架构的艺术》读书笔记】08 消抖技术

8.1简介在电子设备中两个金属触点随着触点的断开闭合便产生了多个信号,这就是抖动。消抖使用来确保每一次断开或闭合触点时只有一个信号起作用的硬件设备或软件。(说人话就是每次断开闭合只对应一个操作)。抖动在某些模拟和逻辑电路中可能产生问题,因为这些电路反应太快会将开关脉冲误当作数据流。时序逻辑数字电路特别容易收到触点抖动的影响。开关抖动产生的电压波形干扰正常逻辑电路的振幅和时序规格要求。结果是亚稳定性、竞争、小脉冲和故障等问题导致电路失效。8.2开关行为   若开关用于开灯或启动风扇马达,则触点抖动基本没有影响,但是用作数字计数器、个人计算器或微处理器等设备的输入,由于触点抖动就会产生问题。计数器

读编程与类型系统笔记08_面向对象变成的元素

1. 面向对象编程1.1. (Object-OrientedProgramming,OOP)1.2. 基于对象的概念的一种编程范式1.3. 对象可以包含数据和代码1.4. 数据是对象的状态1.5. 代码是一个或多个方法1.5.1. 消息是方法,包括名称、实参和返回类型1.6. 通过使用其他对象的方法,对象之间可以“对话”或者发送消息1.7. 关键特征1.7.1. 封装1.7.1.1. 允许隐藏数据和方法1.7.2. 继承1.7.2.1. 用额外的数据和代码扩展一个类型2. 接口2.1. 契约2.2. 描述了实现该接口的任何对象都理解的一组消息2.3. 接口没有任何状态2.4. 相当于书面协议2

读编程与类型系统笔记08_面向对象变成的元素

1. 面向对象编程1.1. (Object-OrientedProgramming,OOP)1.2. 基于对象的概念的一种编程范式1.3. 对象可以包含数据和代码1.4. 数据是对象的状态1.5. 代码是一个或多个方法1.5.1. 消息是方法,包括名称、实参和返回类型1.6. 通过使用其他对象的方法,对象之间可以“对话”或者发送消息1.7. 关键特征1.7.1. 封装1.7.1.1. 允许隐藏数据和方法1.7.2. 继承1.7.2.1. 用额外的数据和代码扩展一个类型2. 接口2.1. 契约2.2. 描述了实现该接口的任何对象都理解的一组消息2.3. 接口没有任何状态2.4. 相当于书面协议2

Rust基础08-模式匹配

模式匹配控制流运算符——match:其允许一个值与一系列模式进行匹配,并执行匹配的模式对应的代码这些模式可以是字面值、变量名、通配符...绑定值的模式:匹配的分支可以绑定到被匹配对象的部分值因此,可以从enum变体中提取值//绑定值#[derive(Debug)]enumUsState{Alabama,Alaska,}enumCoin{Penny,Nickel,Dime,Quarter(UsState),}fnvalue_in_cents(coin:Coin)->u8{matchcoin{Coin::Penny=>{println!("Penny");1}Coin::Nickel=>5,Coi

Rust基础08-模式匹配

模式匹配控制流运算符——match:其允许一个值与一系列模式进行匹配,并执行匹配的模式对应的代码这些模式可以是字面值、变量名、通配符...绑定值的模式:匹配的分支可以绑定到被匹配对象的部分值因此,可以从enum变体中提取值//绑定值#[derive(Debug)]enumUsState{Alabama,Alaska,}enumCoin{Penny,Nickel,Dime,Quarter(UsState),}fnvalue_in_cents(coin:Coin)->u8{matchcoin{Coin::Penny=>{println!("Penny");1}Coin::Nickel=>5,Coi

day08-2-Thymeleaf

服务器渲染技术-Thymeleaf1.基本介绍官方在线文档:Readonline文档下载:Thymeleaf3.1PDF,EPUB,MOBIThymeleaf是什么Thymeleaf是一个现代的服务器端Java模板引擎,适用于Web和独立环境,能够处理HTML,XML,JavaScript,CSS甚至纯文本Thymeleaf是一个跟Velocity、FreeMarker类似的模板引擎,可完全替代JSPThymeleaf是一个Java类库,是一个xml/xhtml/html5的模板引擎,可以作为mvc的web应用的view层Thymeleaf的优点实现JSTL、OGNL表达式效果,语法类似,上手

day08-2-Thymeleaf

服务器渲染技术-Thymeleaf1.基本介绍官方在线文档:Readonline文档下载:Thymeleaf3.1PDF,EPUB,MOBIThymeleaf是什么Thymeleaf是一个现代的服务器端Java模板引擎,适用于Web和独立环境,能够处理HTML,XML,JavaScript,CSS甚至纯文本Thymeleaf是一个跟Velocity、FreeMarker类似的模板引擎,可完全替代JSPThymeleaf是一个Java类库,是一个xml/xhtml/html5的模板引擎,可以作为mvc的web应用的view层Thymeleaf的优点实现JSTL、OGNL表达式效果,语法类似,上手

08:说一下 CommonJS、AMD 和 CMD

一个模块是能实现特定功能的文件,有了模块就可以方便的使用别人的代码,想要什么功能就能加载什么模块。CommonJS:开始于服务器端的模块化,同步定义的模块化,每个模块都是一个单独的作用域,模块输出,modules.exports,模块加载require()引入模块。AMD:中文名异步模块定义的意思。requireJS实现了AMD规范,主要用于解决下述两个问题。1.多个文件有依赖关系,被依赖的文件需要早于依赖它的文件加载到浏览器2.加载的时候浏览器会停止页面渲染,加载文件越多,页面失去响应的时间越长。语法:requireJS定义了一个函数define,它是全局变量,用来定义模块。requireJ

08:说一下 CommonJS、AMD 和 CMD

一个模块是能实现特定功能的文件,有了模块就可以方便的使用别人的代码,想要什么功能就能加载什么模块。CommonJS:开始于服务器端的模块化,同步定义的模块化,每个模块都是一个单独的作用域,模块输出,modules.exports,模块加载require()引入模块。AMD:中文名异步模块定义的意思。requireJS实现了AMD规范,主要用于解决下述两个问题。1.多个文件有依赖关系,被依赖的文件需要早于依赖它的文件加载到浏览器2.加载的时候浏览器会停止页面渲染,加载文件越多,页面失去响应的时间越长。语法:requireJS定义了一个函数define,它是全局变量,用来定义模块。requireJ