网络工程师 (1)数据的表示

一、R进制的表示及互转

        R进制是一种数制表示方法,其中R代表基数,采用R个基本符号(0, 1, 2, …, R-1)表示各位上的数字,并遵循“逢R进一”的运算规则。在R进制中,每一位上的数字均不超过R-1。R进制与十进制之间可以相互转换,转换时需按位展开或进行除基取余、乘基取整等操作。常见的R进制包括二进制、八进制和十六进制等,它们在计算机系统中有着广泛的应用。

二、原码、反码和补码

定义:

  1. 原码:是一种直接表示数值的方法,其中最高位用来表示符号(0为正1为负),其余位表示数值本身。
  2. 反码:是一种用于简化二进制加减运算的表示方法。正数的反码与原码相同;负数的反码是原码除符号位外,其余各位取反(0变1,1变0)。
  3. 补码:是目前计算机系统中最常用来表示有符号整数的方法。正数的补码与原码相同;负数的补码是在其原码的基础上,符号位不变,其余各位取反后加1(即在反码的基础上加1)。

表示方法:

  1. 原码:直接用二进制数表示数值,最高位为符号位。
  2. 反码:对于正数,反码与原码相同;对于负数,反码是原码除符号位外其余位取反。
  3. 补码:对于正数,补码与原码相同;对于负数,补码是反码加1。

运算规则:

  1. 原码:运算时符号位不能直接参与运算,必须和其他位分开,这增加了硬件的开销和复杂性。此外,原码不能直接用于加减运算,因为可能会出现错误结果。
  2. 反码:简化了减法运算,因为减去一个数等同于加上它的反码。但反码存在两个零的表示(+0和-0的反码相同),这在硬件上处理起来比较复杂。
  3. 补码:进一步简化了加减运算,只需要处理加法即可。补码只有一个零的表示(00000000),这大大简化了计算机的算术逻辑单元(ALU)的设计。使用补码,加法和减法运算可以统一处理,意味着计算机的硬件只需要实现加法逻辑,减法可以通过加一个数的补码来实现。

三、逻辑运算

  1. 逻辑与(AND)

    • 定义:两个操作数同时为真时,结果为真;否则为假。
    • 符号:&(在大多数编程语言中)。
    • 示例:1 & 1 = 1,1 & 0 = 0。
  2. 逻辑或(OR)

    • 定义:两个操作数中只要有一个为真,结果为真;两者都为假时,结果为假。
    • 符号:|(在大多数编程语言中)。
    • 示例:1 | 0 = 1,0 | 0 = 0。
  3. 逻辑异或(XOR)

    • 定义:两个操作数相同时,结果为假;不同时,结果为真。
    • 符号:^(在大多数编程语言中)。
    • 示例:1^0 = 1。
  4. 逻辑非(NOT)

    • 定义:操作数为真时,结果为假;操作数为假时,结果为真。
    • 符号:!(在大多数编程语言中),或在某些上下文中使用波浪线(~)表示按位取反(但这与逻辑非在概念上有所不同,逻辑非是针对布尔值的,而按位取反是针对二进制数的每一位的)。
    • 示例:!1 = 0,!0 = 1。

 结语  

生活就像一盒巧克力

你永远不知道你会得到什么

!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/960090.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

coffee销售数据集分析:基于时间趋势分析的实操练习

**文章说明:**对coffee销售数据集的简单分析练习(时间趋势分析练习),主要是为了强化利用python进行数据分析的实操能力。属于个人的练习文章。 **注:**这是我第一次使用md格式编辑博客文章,排版上还是不是很…

SQL在DBA手里-改写篇

背景 最近运营需要做月报汇总交易情况,之前一直是他们手工出的数据,他们想做成月初自动发送邮件,从而减轻他们的工作量。于是他们提供SQL我们在邮件服务器配置做定时发送任务。 表介绍(表及字段已做脱敏处理) trans…

vue3入门基础学习之搭建登录验证功能

环境准备:node.js、Visual Studio Code(也可以是其他开发工具,选自己熟悉的就行) 下载地址:https://nodejs.p2hp.com/https://code.visualstudio.com/ 新建一个vue3的项目,选一个文件夹执行以下命令 使用…

Scrapy如何设置iP,并实现IP重用, IP代理池重用

前置知识 1/3乐观锁 2/3 Scrapy流程(非全部) 3/3 关于付费代理 我用的"快代理", 1000个ip, 每个ip1min的有效期, 你用的时候, 把你的链接, 用户名填上去就行 设置代理IP 🔒 & 帮助文档: ①meta ②meta#proxy$ 语法: ①proxy的设置: Request对象中…

消息队列篇--通信协议篇--网络通信模型(OSI7层参考模型,TCP/IP分层模型)

一、OSI参考模型(Open Systems Interconnection Model) OSI参考模型是一个用于描述和标准化网络通信功能的七层框架。它由国际标准化组织(ISO)提出,旨在为不同的网络设备和协议提供一个通用的语言和结构,以…

开源智慧园区管理系统对比五款主流产品探索智能运营新模式

内容概要 在这个数字化迅速发展的时代,园区管理也迎来了全新的机遇和挑战。众所周知,开源智慧园区管理系统作为一种创新解决方案,正逐步打破传统管理的局限性。它的开放性不仅使得系统可以根据具体需求进行灵活调整,也为用户提供…

leetcode——删除链表的倒数第N个节点(java)

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,3,4,5], n 2 输出:[1,2,3,5] 示例 2: 输入:head [1], n 1 输出:[] 示例 3&#xf…

WPS数据分析000009

一、函数与数据透视表统计数据时效率差异 函数 F4绝对引用 数据透视表 二、数据透视表基础操作 数据透视表:一个快速的生成报表的工具 显示详细信息 方式一; 方式二: 移动数据透视表 删除数据透视表 复制粘贴数据透视表 留足空间,否则拖动字…

【C++图论】1761. 一个图中连通三元组的最小度数|2005

本文涉及知识点 C图论 LeetCode1761. 一个图中连通三元组的最小度数 给你一个无向图,整数 n 表示图中节点的数目,edges 数组表示图中的边,其中 edges[i] [ui, vi] ,表示 ui 和 vi 之间有一条无向边。 一个 连通三元组 指的是 …

ubuntu 更新24LTS中断导致“系统出错且无法恢复,请联系系统管理员”

22LTS to 24LTS 更新过程中手jian把更新程序controlC导致的。 解决 目前企图完成更新来恢复,重启后有软件包冲突,sudo apt upgrade报冲突。无法进行。 将原来source.list重新 sudo dpkg --configure -a sudo apt install -f 这些都不管用。还是显示gno…

vscode环境中用仓颉语言开发时调出覆盖率的方法

在vscode中仓颉语言想得到在idea中利用junit和jacoco的覆盖率,需要如下几个步骤: 1.在vscode中搭建仓颉语言开发环境; 2.在源代码中右键运行[cangjie]coverage. 思路1:编写了测试代码的情况(包管理工具) …

C语言的灵魂——指针(1)

指针是C语言的灵魂,有了指针C语言才能完成一些复杂的程序;没了指针就相当于C语言最精髓的部分被去掉了,可见指针是多么重要。废话不多讲我们直接开始。 指针 一,内存和地址二,编址三,指针变量和地址1&#…

mantisbt添加修改用户密码

文章目录 问题当前版本安装流程创建用户修改密码老的方式探索阶段 问题 不太好改密码啊。貌似必须要域名要发邮件。公司太穷,看不见的东西不关心,只能改源码了。 当前版本 当前mantisbt版本 2.27 php版本 7.4.3 安装流程 (下面流程不是…

DIY QMK量子键盘

最近放假了,趁这个空余在做一个分支项目,一款机械键盘,量子键盘取自固件名称QMK(Quantum Mechanical Keyboard)。 键盘作为计算机或其他电子设备的重要输入设备之一,通过将按键的物理动作转换为数字信号&am…

PostGIS笔记:PostgreSQL 数据库与用户 基础操作

数据库基础操作包括数据模型的实现、添加数据、查询数据、视图应用、创建日志规则等。我这里是在Ubuntu系统学习的数据库管理。Windows平台与Linux平台在命令上几乎无差异,只是说在 Windows 上虽然也能运行良好,但在性能、稳定性、功能扩展等方面&#x…

深度解析:基于Vue 3的教育管理系统架构设计与优化实践

一、项目架构分析 1. 技术栈全景 项目采用 Vue 3 TypeScript Tailwind CSS 技术组合,体现了现代前端开发的三大趋势: 响应式编程:通过Vue 3的Composition API实现细粒度响应 类型安全:约60%的组件采用TypeScript编写 原子化…

linux 管道符、重定向与环境变量

1. 输入输出重定向 在linux工作必须掌握的命令一文中,我们已经掌握了几乎所有基础常用的Linux命令,那么接下来的任务就是把多个命令适当的组合到一起,使其协同工作,会更高效的处理数据,做到这一点就必须搞清楚命令的输…

C语言编程笔记:文件处理的艺术

大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 本文目录 引言正文一、为什么要用文件二、文件的分…

K8s运维管理平台 - KubeSphere 3.x 和4.x 使用分析:功能较强,UI美观

目录标题 Lic使用感受优点:优化点: 实操首页项目 | 应用负载 | 配置 | 定制资源定义存储监控告警集群设置 **KubeSphere 3.x** 和 **4.x**1. **架构变化**:2. **多集群管理**:3. **增强的 DevOps 功能**:4. **监控与日…

堆的简要分析与实现(Java)

目录 开场白 顺序存储下标的关系 堆的定义 堆的实现 大顶堆 准备工作 建堆 获取最大元素 删除最大元素 删除指定索引元素 替换指定索引元素 新增元素 完整实现 & 单元测试 小顶堆 统一实现 总结 开场白 在上一篇文章中我们简要分析并实现了二叉树&#xff…