[杂谈]-从硬件角度理解二进制数
从硬件角度理解二进制数
文章目录
- 从硬件角度理解二进制数
- 1、概述
- 2、模拟电路
- 3、数字电路
- 4、逻辑电平
- 5、TTL 器件的电压水平
- 6、总结
1、概述
二进制数以 2 为基数系统表示,该系统只有两 (2) 个不同的数值,即 0 和 1。就像最常见的那样,十进制数以 10 为基数系统表示,具有十 (10) 个不同的数值 从 0 到 9 的数字。这些数字系统旨在表达信息,数字系统中使用二进制数以0和1的形式执行信息流。
它基于布尔数据类型,只有两个可能的值,即 true 和 false。 它以英国数学家乔治·布尔命名,现已广泛应用于所有数字系统中。 布尔值表示单个位,而二进制数可以由多个单个位或布尔值组成。 如前所述,布尔值可以包括“TRUE”或“FALSE”值,并且这些值也分别由“ON”或“OFF”以及“1”或“0”表示。 然而,二进制数用“0”和“1”表示。 在现代数字电子、通信系统、计算机等中,信息流是二进制的,电压电平旨在区分 0 和 1 值。
数字系统携带的信息是离散的,代表任意时刻的不同电压状态或值。 与模拟信号或线性系统不同,模拟信号或线性系统具有连续变化的值,并且通常由瞬时值表示。 在数字系统中,二进制值 0 和 1 被赋予一个电压电平,以便在信息流动期间可以区分它们。 最常见的是,值 1 由 5V 表示,而二进制值 0 则表示为 0V 或地电位。 数字系统中的这些二进制数通常称为BITS(Binary DigiTS)。
二进制数或位形式的信息处理仅需要两个值或电压,其中之一处于地电位。 这需要更少的电路,非常适合在数字系统中使用。 二进制值可以用任何电压表示并具有指定的逻辑电平。 对于每个电压值,都有一个逻辑电平,即低或高逻辑。 电压水平通常保持在0到10V之间。 通常,高电压电平代表高逻辑电平,低电压(地)电平代表低逻辑电平。
根据信号类型,电子电路分为模拟电路和数字电路。
2、模拟电路
模拟电路使用时变的连续信号,理论上涵盖一段时间内无限范围的值。 相应地,模拟电路可以在一段时间内响应模拟信号。 该信号可以覆盖从正值到负值的电压范围。
下图说明了一段时间内连续变化或模拟信号的行为。
信号的输出取自电位器,电位器的另一端连接到极端电压水平,即电源电压和地。 旋转电位器的旋钮可以使输出电阻从零变化到最大值。 输出电压通过分压规则 (VDR) 获得,范围从零到电源电压。 缓慢旋转电位器旋钮的同时,输出电压逐渐从零增加到电源电压电位,并且在每个瞬间都会获得不同的值。 此外,输出电压的逐渐增加表明任何两个周期之间没有突然或阶跃变化。 输出电压图表示相同,即没有阶跃变化,并且表示连续或模拟信号。 模拟信号的示例包括来自物理输出的传感器输出,例如温度、光、压力、距离、液位等。
3、数字电路
数字电路仅使用两个不同的电压电平作为高逻辑电平和低逻辑电平。 这些高逻辑电平和低逻辑电平分别对应于二进制的 1 和 0 值。 仅在任何瞬间或时间段内,只有两个电压电平对应于这些逻辑电平。 这些逻辑的电压电平可能会有所不同,具体取决于晶体管-晶体管逻辑 (TTL)、互补金属氧化物半导体 (CMOS) 等电路。
数字信号及其离散电压电平可以通过下图进行解释。
上述电路的电位器现已替换为五 (5) 个等值电阻器。 输出电压取自极端电压电平(5V 和 0)以及电阻器的每个结点。 这些结点形成分压器电路,并且包含每个电阻器会导致输出电压增加。 输出电压级已分为六 (6) 个级,旋钮将输出按顺序连接到每个级。 从第 1 级到第 6 级,可以观察到输出电压在每一步都会突然变化,并产生一个不变化的独特电压电平。 输出电压图描绘了相同的情况,即级变化产生突然的电压阶跃,并且每个级在该周期内具有恒定或独特的电压电平。
从上面的图示可以看出,连续变化的信号或模拟信号在一段时间内不是恒定的,并且在一段时间内可能包含无限范围的值。 相反,数字信号在一段时间内包含独特的值。 为了理解这两个信号之间的差异,可以将调光器的实时示例用作模拟信号。 调光器的旋转是连续的而不是突然的。 另一方面,开关(按钮)以数字信号的形式控制灯光。 该开关只有两种不同的状态,即关或开,并且它们之间的变化是突然的。
大多数电子电路都包含处理传感器的模拟和数字电路。 需要从模拟到数字的转换,以使用模数转换器 (ADC) 将读取模拟数据的传感器转换为数字值。 数字值可以在数字系统中处理、轻松传输并存储在存储设备中。 同样,可以使用数模转换器 (DAC) 将存储器或指令中存储的数字值转换为模拟值。
4、逻辑电平
正如本文上面所讨论的,二进制位或布尔值只能保存两种可能状态之一,即逻辑 1 或逻辑 0。逻辑 1 和逻辑 0 通常也分别称为 ON/HIGH 和 OFF/LOW。 在下图中,显示了这两种状态以及实现这些可能状态的简单电路。 最常用的逻辑系列,即 TTL,使用 +5V 作为逻辑 1 值的指示。
5、TTL 器件的电压水平
数字逻辑电平(即高电平和低电平)是从信号电压电平获得的,并且通常对于逻辑电平,根据许多因素使用一定范围的电压。 下图显示了晶体管-晶体管逻辑(TTL)的输入和输出电压电平。
对于 TTL 输入信号,需要最大 0.8V 的电压才能确定逻辑低电平,而需要最小 2V 的电压才能确定逻辑高电平。 这意味着任何逻辑低电平输入都需要具有 0 至 0.8V 的电压,对于逻辑高电平输入则需要 2 至 5V 的电压。 0.8 至 2V 的电压被指定为不可用。 同样,对于 TTL 输出信号,逻辑低限设置为最大 0.4V,逻辑高限设置为 2.7V。 落在这些电压电平内的电压将根据信号的电压在逻辑上指定为高电平或低电平。
6、总结
- 二进制数是一种以 2 为基数的计数系统,其中每个连续位都将二进制数的值加倍(2 的幂)。
- 通常称为位的二进制数的每个数字都是布尔数据类型,可以保存两个可能值之一,即 0 或 1。0 和 1 的值也分别指定为 LOW 和 HIGH。
- 二进制数的每个连续位都会使二进制数的值加倍,例如 对于 1、2、3、4 和 5 位二进制数,十进制值分别为 1、2、4、8、16 和 32。
- 电子电路可分为模拟电路和数字电路。 模拟信号是连续的并且在一段时间内包含许多值。 同时,数字信号具有离散值并且这些离散值之间的变化是突然的或突然的。
- 最常用的晶体管-晶体管逻辑分别使用 0 和 5V 的电压电平来指定逻辑低电平和高电平。
相关文章:

[杂谈]-从硬件角度理解二进制数
从硬件角度理解二进制数 文章目录 从硬件角度理解二进制数1、概述2、模拟电路3、数字电路4、逻辑电平5、TTL 器件的电压水平6、总结 1、概述 二进制数以 2 为基数系统表示,该系统只有两 (2) 个不同的数值,即 0 和 1。就像最常见的那样,十进制…...

Fast-DDS 服务发现简要概述
阅读本文章需要对DDS基础概念有一些了解,一些内容来自Fast-DDS官方文档,一些是工作中踩过的坑。 1. 服务发现阶段 满足OMG标准的DDS服务发现分为两部分,分别是: PDP(Participant Discovery Protocol 参与者发现协议):参与者确认…...

基于spingboot的websocket订阅、广播、多人聊天室示例
概述 基于spingboot的websocket多人聊天系统。包括订阅,广播、点对点单人聊天,多人聊天室功能。 详细 一、运行效果 简单示例 广播 单人聊天 多人聊天室 二、相关代码 websocket配置 package com.iamgpj.demowebsocket.config;import com.iamgpj.d…...

Linux mac Windows三系统 局域网文件共享方法
主要工具: Samba是一个开源的软件套件,允许Linux系统与Windows系统之间共享文件和打印机。 一、首先是Linux共享的设置 ①安装 sudo apt-get install samba ②创建共享文件夹 sudo mkdir /home/share ③配置用户 sudo smbpasswd -a kequan ④修改…...

Java——比较器
引入的背景 我们知道基本数据类型的数据(除boolean类型外)需要比较大小的话,直接使用比较运算符即可,但是引用数据类型是不能直接使用比较运算符来比较大小的。那么,如何解决这个问题呢? 在Java中经常会涉…...
【数据结构】初识泛型
文章目录 一般的类和方法,只能使用具体的类型: 要么是基本类型,要么是自定义的类。这种限制对代码的束缚就会很大。所以我们引入了泛型。泛型,泛顾名思义就是广泛的意思。就是适用于许多许多类型。从代码上讲,就是对类型实现了参数…...
代码随想录--哈希--有效的字母异位词
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 示例 1: 输入: s "anagram", t "nagaram" 输出: true 示例 2: 输入: s "rat", t "car" 输出: false 说明: 你可以假设字符串只包含小写字母。…...
MySQL——数据的增删改
2023.9.12 本章开始学习DML (数据操纵语言) 语言。相关学习笔记如下: #DML语言 /* 数据操作语言: 插入:insert 修改:update 删除:delete */#一、插入语句 #方式一:经典的插入 /* 语法: insert …...

云服务器与http服务器
如何与http服务器建立连接(客户端)? http请求设计格式: 例子: 发送http请求 http数据响应格式: 接收http服务器返回的数据需要进一步进行字符串处理操作,提取有用的数据。...

golang教程 beego框架笔记一
安装beego 安装bee工具 beego文档 # windos 推荐使用 go install github.com/beego/bee/v2master go get -u github.com/beego/bee/v2masterwindows使用安装bee工具时碰到的问题; 环境配置都没有问题,但是执行官网的命令:go get -u github…...

【深度学习】Mini-Batch梯度下降法
Mini-Batch梯度下降法 在开始Mini-Batch算法开始之前,请确保你已经掌握梯度下降的最优化算法。 在训练神经网络时,使用向量化是加速训练速度的一个重要手段,它可以避免使用显式的for循环,并且调用经过大量优化的矩阵计算函数库。…...

AI项目六:WEB端部署YOLOv5
若该文为原创文章,转载请注明原文出处。 一、介绍 最近接触网页大屏,所以就想把YOLOV5部署到WEB端,通过了解,知道了两个方法: 1、基于Flask部署YOLOv5目标检测模型。 2、基于Streamlit部署YOLOv5目标检测。 代码在…...
敲代码常用快捷键
1、代码拖动 PyCharm:按住 shiftalt鼠标选中某一区域来拖动,即可实现拖动这一区域至指定区域。Visual Studio Code (VSCode): - Windows/Linux:Alt 鼠标左键拖动 - MacOS:Option 鼠标左键拖动 IntelliJ IDEA: - Win…...
MyBatis: 分页插件PageHelper直接传递分页参数的用法
一、加分页插件依赖 <dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.13</version></dependency>二、配置分页插件,并配置相关属性&a…...

Python基于Flask的高校舆情分析,舆情监控可视化系统
博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W,Csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 运行效果图 基于Python的微博大数据舆情分析,舆论情感分析可视化系统 系统介绍 微博舆情分析系…...

Python第一次作业练习
题目分析: """ 参考学校的相关规定。 对于四分制,百分制中的90分及以上可视为绩点中的4分,80 分及以上为3分,70 分以上为2分,60 分以上为1分; 五分制中的5分为四分制中的4分,4分为3分&#…...

InstallShield打包升级时不覆盖原有文件的解决方案
一个.NET Framework的Devexpress UI Windows Form项目,用的InstallShield,前些个版本都好好的,最近几个版本突然就没法更新了,每次更新的时候都覆盖不了原文件,而且这样更新后第一次打开程序(虽然是老程序&…...

服务器巡检表-监控指标
1、巡检指标 系统资源K8S集群NginxJAVA应用RabbitMQRedisPostgreSQLElasticsearchELK日志系统 2、巡检项 检查项目 检查指标 检查标准 系统资源 CPU 使用率 正常:<70% 低风险:≥ 70% 中风险:≥ 85% 高风险:≥ 9…...

无涯教程-JavaScript - DDB函数
描述 DDB函数使用双倍余额递减法或您指定的某些其他方法返回指定期间内资产的折旧。 语法 DDB (cost, salvage, life, period, [factor])争论 Argument描述Required/OptionalCostThe initial cost of the asset.RequiredSalvage 折旧结束时的价值(有时称为资产的残值)。 该…...

uniapp打包微信小程序。报错:https://api.weixin.qq.com 不在以下 request 合法域名列表
场景:在进行打包上传测试时,发现登录失效,但在测试中【勾选不效应合法域名】就可以。 出现原因:我在获取到用户code后,直接使用调用官方接口换取openid 解决方案: 可以把code带给后端,让他们返…...

ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...

Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...

uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uniapp 中配置 配置manifest 文档:manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号:4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...
LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用
中达瑞和自2005年成立以来,一直在光谱成像领域深度钻研和发展,始终致力于研发高性能、高可靠性的光谱成像相机,为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

软件工程 期末复习
瀑布模型:计划 螺旋模型:风险低 原型模型: 用户反馈 喷泉模型:代码复用 高内聚 低耦合:模块内部功能紧密 模块之间依赖程度小 高内聚:指的是一个模块内部的功能应该紧密相关。换句话说,一个模块应当只实现单一的功能…...

算法—栈系列
一:删除字符串中的所有相邻重复项 class Solution { public:string removeDuplicates(string s) {stack<char> st;for(int i 0; i < s.size(); i){char target s[i];if(!st.empty() && target st.top())st.pop();elsest.push(s[i]);}string ret…...
raid存储技术
1. 存储技术概念 数据存储架构是对数据存储方式、存储设备及相关组件的组织和规划,涵盖存储系统的布局、数据存储策略等,它明确数据如何存储、管理与访问,为数据的安全、高效使用提供支撑。 由计算机中一组存储设备、控制部件和管理信息调度的…...