首页 > 其他分享 >数据的表示与运算1

数据的表示与运算1

时间:2024-04-07 09:32:12浏览次数:19  
标签:表示 运算 符号 二进制 补码 1111 移码 次方 数据

2.1数值与编码

2.1.1 进位计数制及其互相转换

[注意!!]  2018考察

二进制编码的原因:

  • 计算机只有两种状态,0和1可以被稳定并简单的表达。成本低

  • 1和0正好对应逻辑上的真和假,为逻辑判断提供便利条件

  • 二进制的编码和运算规则简单,可以利用逻辑门电路方便实现

  • [总结]  利用二进制简单方便并且成本低

进位计数法以及各进制数之间的转换

[注意!]  其实我们没有必要强迫自己去记忆书中的进制表示公式,而是只需要明白一些简单的规律即可

基数:二进制,八进制,十进制,16进制中的2,8,10,16就是基数

二进制只有0,1

八进制只有0,1,2,3,4,5,6,7

十六进制只有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 后边英文字母分别表示10,11,12,13,14,15

十进制转各进制

个人认为由十进制数转换为各进制数是最简单的,方法如下:

首先是整数部分,我们只需要用整数部分去除以要转换成的进制数的基数,直到最后的商为0,将每一步得到的商逆序排序即可。

将十进制整数123转为2进制,8进制,16进制

123/2=61 ...... 1123/8=15 ...... 3123/16=7 ...... 11
61/2=30 ...... 115/8=1 ...... 77/16=0......7
30/2=15 ...... 01/8=0 ...... 1故十六进制数就是7B
15/2=7 ...... 1故八进制数就是173
7/2=3 ...... 1
3/2=1 ...... 1
1/2=0 ...... 1
故二进制数就是1111011

我们需要了解的是,十进制数转二进制数是最常用的,因为八进制和十六进制可以用二进制数很方便地表达出来,所以小数部分就不做详细解释。

之后是小数部分,相对于整数部分的直接除,小数部分采用乘的方式,取整数部分为排序,小数部分继续乘他的基数。并且也不需要逆序排序。

将十进制数0.6875转为2进制

0.6875×2=1.375 ——1

0.375×2=0.75 ——0

0.75×2=1.5 ——1

0.5×2=1 ——1

故变为的二进制数就是0.1011 ,八进制和十六进制同理。

[注意]  这一部分的知识点将在之后的IEEE754和浮点数的运算中不断用到,所以要熟练应用

任意进制转十进制

各位数码按权值相乘相加即可,二进制转十进制是从右到左用二进制的每个数去乘以2的相应次方(次方从0开始)。其余进制只需要将基数改变,建议大家可以直接将其首先变为二进制再进行计算。举例讲解:

将二进制数1101转为十进制

二进制转八进制和十六进制

二进制转八进制和十六进制时只需要从小数点为边界,整数部分向左数,小数部分向右数。八进制是2的3次方,故3个为一组,同理十六进制就是4个为一组。每组对应乘2的N次方,也就是将每一组都当成一个独立的二进制数,将其用转十进制的方法转变。对于位数不够的情况分别在最左边和最右边补0即可。语言表达不够明确,我们举例讲解:

将二进制数1111000010.01101分别变为八进制和十六进制

001 111 000 010 . 011 01

第一组就是0×2的2次方+0×2的1次方+1×2的0次方,也就是1.所以就变成了(1712.32)O

0011 1100 0010 . 0110 1000

第一组就是0×2的3次方+0×2的2次方+1×2的1次方+1×2的0次方,也就是3.所以就变成了(3C2.68)H

2.1.2定点数的编码表示

真值和机器数

众所周知,我们日常生活中的数字包含正数和负数之分,计算机也是如此。他将数字分为有符号数和无符号数两种计算机中的有符号数通常将最高位当作符号位,1代表复数,0代表正数。将符号数字化的数字称为机器数,将用+,-来代表政府的数字称为真值。

原码,补码,反码,移码⭐⭐⭐⭐⭐⭐

[注意!!]  极其极其极其重要的章节,这里我们默认字长都为8位

原码

用机器数的最高位表示数的符号,其他各位表示数的绝对值.

+1110 为00001110

-1110为10001110

我们可以看到在n+1位原码只有n为可以表示数值,所以他的表示范围就是-(2的n次方 -1)<=x<=2的n次方 -1

标签:表示,运算,符号,二进制,补码,1111,移码,次方,数据
From: https://blog.csdn.net/yingxuya5/article/details/137449951

相关文章

  • 爬虫之数据神器7---Peewee性能优化技巧指南(1)
    前言继续上一章:https://hsnd-91.blog.csdn.net/article/details/137412359        Peewee是一个流行的Python对象关系映射(ORM)库,它提供了简洁而强大的数据库操作功能。然而,在处理大型数据集或高并发情况下,Peewee的性能可能会受到影响。为了帮助开发人员充分利用Peewee......
  • 5 数据库
    数据库题号:51-56题目:6数据模型概念数据模型按照用户的观点对数据和信息建模,用E-R图表示名词实体:人/物/外部系统。属性:码:唯一标识实体的属性集。域:取值范围。联系:实体之间的关系称为联系一对一一对多多对多结构数据模型结构性模式是直接面向数据......
  • python_列表推导式_矩阵运算
    带条件的列表推导式even_number=[iforiinrange(10)ifi%2==0]even_number#output[0,2,4,6,8][0,2,4,6,8]列表推导式的嵌套matrix=[[i*jforiinrange(1,4)]forjinrange(1,4)]matrix#output=[[1,2,3],[2,4,6],[3,6,9]][[1,......
  • C语言03-数据类型、运算符
    第6章数据类型6.5获取数据存储大小sizeof 运算符,可以计算出指定数据的字节大小结果是size_t类型的数据,对应的格式占位符是%zu使用说明:计算指定数据的字节大小1、sizeof和数据类型名称一起使用eg:printf("char:%zu\n",sizeof(char));2、sizeof和变量......
  • “数据中台:让数据用起来”总结
    一、什么是数据中台数据中台是一套可持续“让企业的数据用起来”的机制,是一种战略选择和组织形式,是依据企业特有的业务模式和组织架构,通过有形的产品和实施方法论支撑,构建的一套持续不断把数据变成资产并服务于业务的机制。二、数据中台必备的4个核心能力1、数据汇聚整合;2、数据......
  • 微信小程序开发之数据绑定
    1、什么是数据绑定?为什么要进行数据绑定?数据绑定的好处?真实项目中,数据通常会放置在服务器中,通过HTTP请求来访问服务器提供的RESTFULAPI,实现数据获取。微信小程序入门开发时,我们将页面里的内容全都直接编码在wxml文件中,这种代码写法称为“硬编码”,数据直接暴露在wxml文件中,是......
  • OpenCV中表示图像的类Mat在QT里的基本使用
    在Qt中使用OpenCV的Mat类来表示和处理图像是相对简单的,因为Qt和OpenCV都是跨平台的,并且可以很好地在一起工作。以下是如何在Qt项目中使用OpenCV的Mat类的基本步骤:1.在Qt代码中包含OpenCV头文件在Qt的源代码文件中,你需要包含OpenCV的头文件以及opencv统一的命名空间来使用Mat......
  • 【Web爬虫】爬⾍⿊⻰江省与四川省农机补贴以及数据分析
    目录一、实验目的二、实验内容2.1实验爬取数据选择2.2python代码爬取数据2.3数据处理与分析三、实验原理3.1python 连接网页的两种方式3.1.1使用requests连接网页3.1.2使用fromseleniumimportwebdriver连接网页,创建网页测试3.2python 获取网页内容的两种方......
  • 数据结构 第八章(排序算法)【上】
    写在前面:本系列笔记主要以《数据结构(C语言版)》为参考(本章部分图片来源于王道),结合下方视频教程对数据结构的相关知识点进行梳理。所有代码块使用的都是C语言,如有错误欢迎指出。视频链接:第01周a--前言_哔哩哔哩_bilibili基数排序部分的代码参考了一位小伙伴分享的代码,特此说明一......
  • 办税日历API数据
    征抄报税的日期各有不同,要在自己的应用中获取12366提供的办税日历数据,可以打开开发者模式,对页面源码进行分析。办税日历链接:https://12366.chinatax.gov.cn/bsfw/calendar/getCalendarListForDay 这段源码的含义是,根据不同的区域,获得相应的代码:varheaderTargetAreaMap={......