二进制介绍

1bf2a16643f34b6cba82078e42e173a1.gif十进制转相应进制

 

      (十进制)231 转 八进制 除八取余法 从下而上取余

       231/8=28 ....7

 

          28/8=3.......4

 

       3/8=0........3

 

       (十进制)231=(八进制)0o347

 

      (十进制)231 转 16进制 除十六取余法 从下而上取余

       231/16=14......7

 

       14/16=0..........14

 

       (十进制) 231=(十六进制)0xe7

 

      (十进制)231.3 转 16进制 (*)小数部分 乘十六取整法 从上而下取整

       0.3*16=0.48............0

 

       0.48*16=7.68..........7

 

       0.68*16=10.88........10

 

       0.88*16=14.08........14

 

       0.08*16=1.28..........1

 

       0.28*16=4.48 .........4

 

       (十进制)231.3=(十六进制)0xe7.07ae14    

 

  相应进制转十进制

      (八进制)0o27.43转 十进制

        7*8^0+2*8^1=(八进制)23

 

        4*8^-1+3*8^-2=35/64=0.546875

 

        0o27.43=(十进制)23.546875

 

       

 

      (十六进制)0o27.43转 十进制(同上)

        。。。。。。。。

 

  进制换算补充

      在进行十转二,八,十六进制小数点换算时,不管怎么乘二,八或十六,结果小数部分始终不为零时,分别有一舍二入,三舍四入,七舍八入对应操作

 

      八进制直接转十六进制或者十六转八,只有通过二进制,或十进制中间过渡,没有捷径,如果哪位大神有直接转换的方法欢迎告知

 

 二进制的原码,反码,补码

       正数的原码,反码,补码

            24=(二进制)00....00011000

 

            原码:00....00011000

 

            反码:00....00011000

 

            补码:00....00011000

 

       负数的原码,反码,补码

            -24=(二进制)1000....00011000

 

            原码:1000.....00011000

 

            反码:11111....11100111

 

            补码:1000.....11101000 (反码加一)

 

  二进制的运算  

        计算机对数字的加减运算都是用补码

            -23(原码):1000.....00010111

 

            -23(反码):1111......11101000

 

              -23(补码):1111......11101001

 

             12(原码):0000.....00001100

 

             12(反码):0000.....00001100

 

              12(补码):0000.....00001100

 

             

 

             12(补码)0000.....00001100(补码相加时,高位也就是符号位也要运算进来)

 

             -23(补码)1111......11101001

 

            ` -23(补码)+12(补码)=1111......11110101(结果如果是负数,也就是高位是1,取反加一)

 

             (结果取反加一)1000......00001011= -23+12=-11

 

        &(与),^(异或),|(或) ,~(按位取反) (*) 

             &(与)(1&1=1,1&0=0,0&0=0)

 

             101010001

 

             1101 00111

 

             =100000001

 

             ^(异或)(1^1=0,0^0=0,0^1=1)

 

             101010001

 

             1101 00111

 

             =01111 0110 

 

             |(或)(1|0=1,1|1=1,0|0=0)

 

             101010001

 

             1101 00111

 

             =11111 0110  

 

             ~(按位取反)对补码进行取反,取反结果为负,进行反码加一

 

            -12

 

            原码:100........1100

 

            反码:111.........0011

 

            补码:111.........0100

 

            取反:000.........1011=11

 

            12    

 

            原码:000........1100

 

            反码:000........1100

 

            补码:000........1100

 

            取反:111.........0011 结果负数,反码加一

 

             100........1101=-13

 

            1        

 

            原码:000........0001

 

            反码:000.........0001

 

            补码:000.........0001

 

            取反:111.........1110

 

               100..........0010=-2

 

            -1        

 

            原码:100........0001

 

            反码:111.........1110

 

            补码:111.........1111

 

            取反:000.........0000=0

 

        位移算数左移<<,算数右移>>,逻辑右移>>>(全都是补码进行的位移)

            5>>2=1

 

            (补码)00..0101>>2=00..0001

 

            -5>>2=-2

 

            10..0101

 

             (补码)11..1010+1=11..1011

 

            11..1011>>2=1111..1110(为负数,要反码+1)

 

            1000..0001+1=1000..0010=-2

 

            5>>>2=1(和算数位移结果一样)

 

            (补码)00..0101>>2=00..0001       

 

            -5>>>2=1073741822

 

            10..0101

 

            (补码)11..1010+1=11..1011

 

            11..1011>>>2=0011..1110(逻辑右移,高位始终补零,所以不用反码补一,结果就是一个很大的整数)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++动态内存分配(动态内存分配函数)栈区

内存拷贝函数&#xff1a; void *memcpy(void *dest,const void *src,size_tn);#include<string.h>功能&#xff1a;从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest内存地址的起始位置 分配内存使用new 例如&#xff1a;salarynew int[num]; 最后需要释放…

Linux文件操作命令(touch、cat、more、cp、mv、rm)

之前我们学习了对目录&#xff08;即文件夹的操作&#xff0c;那么现在我们来一起看一下怎么操作文件吧&#xff09; 1.touch命令 功能&#xff1a;创建文件 语法&#xff1a;touch 参数 参数&#xff1a;被创建的文件路径 注意&#xff1a;touch命令无选项&#xff0c;参…

【Docker-Dev】Mac M2 搭建docker的redis环境

Redis的dev环境docker搭建 1、前言2、官方文档重点信息提取2.1、创建redis实例2.2、使用自己的redis.conf文件。 3、单机版redis搭建4、redis集群版4.1、一些验证4.2、一些问题 结语 1、前言 本文主要针对M2下&#xff0c;相应进行开发环境搭建&#xff0c;然后做一个文档记录…

面试算法88:爬楼梯的最少成本

题目 一个数组cost的所有数字都是正数&#xff0c;它的第i个数字表示在一个楼梯的第i级台阶往上爬的成本&#xff0c;在支付了成本cost[i]之后可以从第i级台阶往上爬1级或2级。假设台阶至少有2级&#xff0c;既可以从第0级台阶出发&#xff0c;也可以从第1级台阶出发&#xff…

window使用cpolar实现内网穿透

文章目录 cpolar下载和安装启动和配置cpolar卸载 cpolar下载和安装 进入spolar官网&#xff0c;完成注册&#xff0c;下载相应的cploar版本解压和运行安装文件 配置安装路径&#xff0c;然后选择next&#xff0c;完成即可 启动和配置 点击首页的快捷图标打开网页&#xf…

Defi安全-Monox攻击事件Foundry复现

其它相关内容可见个人主页 Mono攻击事件的介绍见&#xff1a;Defi安全–Monox攻击事件分析–phalconetherscan 1. 前情提要和思路介绍 Monox使用单边池模型&#xff0c;创建的是代币-vCash交易对&#xff0c;添加流动性时&#xff0c;只需添加代币&#xff0c;即可进行任意代…

Jmeter相关概念

Jmeter相关概念 jmeter性能指标 Aggregate Report 是 JMeter 常用的一个 Listener&#xff0c;中文被翻译为“聚合报告”。今天再次有同行问到这个报告中的各项数据表示什么意思&#xff0c;顺便在这里公布一下&#xff0c;以备大家查阅。 如果大家都是做Web应用的性能测试&a…

C语言中关于函数调用的理解

理论 关于函数调用的方式有两类&#xff1a;传值调用和传址调用 传值调用&#xff1a;函数的形参和实参分别占有不同的内存块&#xff0c;对形参的修改不会影响实参。 传址调用&#xff1a;把函数外部创建变量的内存地址传递给函数参数的一种调用方式。可以让函数和函数外面…

每周一算法:倍增法求区间最大最小值(RMQ)

RMQ RMQ 是英文 Range Maximum/Minimum Query 的缩写&#xff0c;表示区间最大&#xff08;最小&#xff09;值。使用倍增思想解决 RMQ 问题的方法是 ST 表&#xff08;Sparse Table&#xff0c; 稀疏表 &#xff09;。ST 表是用于解决 可重复贡献问题 的数据结构。 可重复贡献…

IPv6和IPv4在技术层面的区别

随着互联网的不断发展&#xff0c;IPv4地址资源已经逐渐枯竭&#xff0c;而IPv6地址的使用逐渐成为趋势。IPv6和IPv4作为互联网协议的两个版本&#xff0c;在技术层面存在许多区别。本文将从地址空间、地址表示方法、路由协议、安全性、移动性以及网络性能等方面对IPv6和IPv4进…

Dockerfile的ENV

文章目录 环境总结测试测试1测试2测试3测试4测试5测试6 参考 环境 RHEL 9.3Docker Community 24.0.7 总结 如果懒得看测试的详细信息&#xff0c;可以直接看结果&#xff1a; 一条 ENV 指令可以定义多个环境变量。Dockerfile里可以包含多条 ENV 指令。环境变量的值不需要用…

【MIdjourney】关于图像中人物视角的关键词

本篇仅是我个人在使用过程中的一些经验之谈&#xff0c;不代表一定是对的&#xff0c;如有任何问题欢迎在评论区指正&#xff0c;如有补充也欢迎在评论区留言。 1.全景镜头(panorama) 全景镜头是一种广角镜头&#xff0c;可以捕捉到比普通镜头更广阔的视野范围。全景镜头&…

目标检测-One Stage-YOLOv4

文章目录 前言一、目标检测网络组成二、BoF&#xff08;Bag of Freebies&#xff09;1. 数据增强2.语义分布偏差问题3.损失函数IoUGIoUDIoUCIoU 三、BoS(Bag of Specials)增强感受野注意力机制特征融合激活函数后处理 四、YOLO v4的网络结构和创新点1.缓解过拟合&#xff08;Bo…

Python武器库开发-武器库篇之子域名扫描器开发(四十一)

Python武器库开发-武器库篇之子域名扫描器开发(四十一) 在我们做红队攻防或者渗透测试的过程中&#xff0c;信息收集往往都是第一步的&#xff0c;有人说&#xff1a;渗透的本质就是信息收集&#xff0c;前期好的信息收集很大程度上决定了渗透的质量和攻击面&#xff0c;本文将…

竞赛练一练 第23期:NOC大赛每日一练,python题目刷题第8天,包含答案解析

题目来自:NOC 大赛创客智慧编程赛项Python 复赛模拟题(二) NOC大赛创客智慧编程赛项Python 复赛模拟题(二) 第一题: 编写一个成绩评价系统,当输入语文、数学和英语三门课程成绩时,输出三门课程总成绩及其等级。 (1)程序提示用户输入三个数字,数字分别表示语文、数学、…

Springboot进行多环境配置的2种方式

本文来说下Springboot使用Spring Profile和Maven Profile进行多环境配置 文章目录 概述Spring Profile多环境主配置文件与不同环境的配置文件 Maven ProfileProfile配置资源过滤 Spring Profile与Maven Profile具体使用 概述 原因 在实际的项目上&#xff0c;一般会分三种环境d…

Java学习苦旅(二十二)——MapSet

本篇博客将详细讲解Map和Set。 文章目录 搜索概念模型 MapMap.Entry<K, V>Map的常用方法说明TreeMap和HashMap的区别 Set常用方法说明TreeSet和HashSet的区别 结尾 搜索 概念 Map和set是一种专门用来进行搜索的容器或者数据结构&#xff0c;其搜索的效率与其具体的实例…

JSUDO|加速度与阿里云合作云产品

电讯&#xff1a;深圳市加速度软件开发有限公司【加速度jsudo】&#xff0c;与阿里云计算有限公司&#xff08;简称“阿里云”&#xff09;达成合作&#xff0c;双方将在电商、企业管理等应用软件领域就云产品和应用软件更深层次合作。 加速度软件长期以来&#xff0c;一直与阿…

SpringBoot2基础

SpringBoot2 一、初始化项目 ①、创建project ②、构建maven项目 如果选项里没有8的&#xff0c;可以最顶上镜像换成阿里巴巴的&#xff1a;https://start.aliyun.com/ 直接在main函数运行就行 二、SpringBoot入门 1、复制工程 原则 保留工程基础结构抹掉原始工程痕迹 做个…

K8s-应用数据

应用数据 1 应用数据解析 k8s应用数据类型和步骤解析 k8s如何使用数据功能 k8s使用各种数据类型的配置 2 应用数据实践 emptyDir实践 资源对象文件内容 apiVersion: v1 kind: Pod metadata:name: sswang-emptydir spec:containers:- name: nginx-webimage: kubernetes-reg…