数据的进制转换以及算术逻辑运算

news2024/11/16 15:28:15

1.数据的进制转化 

  1. 进制的表示:二进制、十六进制,二进制符号位0b,一般表示为0b0011,十六进制符号位0x或H,可以表示为0x18F或18F
  2. R进制整数转十进制:位权展开法,用R进制数的每一位乘以R的n次方,n是变量,从R进制数的整数最低位开始,依次为0,1,2,…累加
  3. 十进制转R进制:十进制整数除以R倒取余数,用十进制数除以R,记录每次所得的余数,若商不为0,则继续除以R,直至商为0,然后将所有余数从下到上记录,排列成从左到右顺序,即转换后的R进制数
  4. m进制转n进制:先将m进制数转化为十进制数,再将十进制数转化为n进制数,中间需要通过十进制中转
  5. 二进制转八进制:每三位二进制数转换为一位八进制数,二进制数位个数不是三的倍数,则在前面补0(原则是数值不变),如二进制数01101有五位,前面补一位0就有六位,即001101,每三位转换为一位八进制数,即001=1,101=1+4=5,即01101=15
  6. 二进制转十六进制:四位二进制数转换为一位十六进制数,二进制位数不是四的倍数,则在前面补0,如二进制数101101有六位,前面补两个0就有八位,即00101101,每四位数转换为一位十六进制,0010=2,1101=13=D,即101101=2D

 2.数的表示 

机器数:各种数值在计算机中表示的形式,其特点是使用二进制计数制,数的符号位0和1表示,小数点则隐含,不占位置

机器数有符号数和无符号数之分,无符号数表示整数,没有符号位,带符号数的最高位为符号位,整数符号位为0,负数符号位为1

定点表示法分为纯小数和纯整数两种,其中小数点不占存储位,而是按照以下约定:

纯小数:约定小数点的位置在机器数的最高位数值位之前
纯整数:约定小数点的位置在机器数的最低位数值为之后
真值:机器数对应的实际数值

3.数的编码方式

原码: 一个数的正常的二进制表示,最高位为符号,整数0的原码有两种形式:+0(0 0000000)和-0(10000000)

反码:正数的反码即原码;负数的反码是在原码的基础上,除符号位外,其他各位按位取反。数值0的反码也有两种形式:+0(00000000),-0(11111111)

补码:正数的补码即原码;负数的补码是在原码的基础上,除符号位外,其他各位按位取反,然后末位+1,若有进位则产生进位,因此数值0的补码只有一种形式:+0=-0=00000000

移码:用作浮点运算的阶码,无论是正数负数,都是将补码的首位(符号位)取反得到移码

机器字长为n时各种码制表示的符号位数的取值范围(差别在与0的表示,原码和反码分+0和-0,补码只有一个0,因此可以多表示一个)

例:若机器字长为8,请给出45和-45的原码、反码、补码和移码

真值原码反码补码移码
4500101101001011010010110110101101
-4510101101110100101101001101010011

 4 浮点数表示

浮点数:表示方法为N=F2E,其中E为阶码,F称为尾数,类似于十进制的科学计数法,如85.125=0.85125*102,二进制如:101.011=0.1010112^3

在浮点数的表示中,阶码为带符号的纯整数,尾数为带符号的纯小数,要注意符号位占最高位(正数0负数1),其表示格式如下:

很明显,与科学计数法类似,一个浮点数的表示方法不是唯一的,浮点数能表示数值范围由阶码确定,所表示的数值精度由尾数确定

尾数的表示采用规格化方法,即带符号尾数的补码必须为1.0xxx(负数)或者0.1xxx(正数),其中x可以为0或者1

浮点数运算步骤

  • 对阶(使两个数的阶码相同,小阶向大阶看齐,叫嚣阶码增加即为,尾数就右移几位)
  • 尾数计算(相加,若是减运算,则加负数)
  • 结果规格化(即尾数表示规格化,带符号尾数转换为1.0xxx或者0.1xxx)

 5 算数运算和逻辑运算

  • 数与数之间的算术运算包括加减乘除等基本算术运算

  • 逻辑运算包括逻辑与&、逻辑或|、逻辑异或、逻辑左移<<、逻辑右移>>

 

逻辑与(又称为逻辑乘,类似于且,and):两个操作同时为真则为真,其中有一个为假则为假。

逻辑或(又称为逻辑加,类似于或,or):两个操作数只要其中一个为真,即为真。

逻辑异或:相异为真,相同为假。

逻辑非(NOT,类似于取反,!-):操作数为真,则结果为假;操作数为假,则结果为真。

真题:要判断字长为16位的整数a的低四位是否全为0,则(A)

  1. 将a与0x000F进行“逻辑与”运算,然后判断运算结果是否等于0
  2. 将a与0x000F进行“逻辑或”运算,然后判断运算结果是否等于F
  3. 将a与0xFFF0进行“逻辑异或”运算,然后判断运算结果是否等于0
  4. 将a与0xFFF0进行“逻辑与”运算,然后判断运算结果是否等于F
     

 0x000F表示是十六进制,F也就是15,000F换成十六进制就是:0000 0000 0000 1111

0xFFF0换成十六进制即为:1111 1111 1111 0000。

一、先看A选项,a的高位为未知数,通过然后判断运算结果是否等于0,得出判断低四位是否全为0

(1)a与 0x000F逻辑与运算中,0x000F表示是十六进制,F也就是15,000F换成十六进制就是:0000 0000 0000 1111。又因为0和任何数作逻辑与运算都为0,所以a的高位与000F的高位作与运算,高位肯定是0(即000?)。

(2)看低位逻辑与运算,如果a的低四位有1,那么与000F中的F逻辑与运算,肯定是有1。如果a的低四位全是0,那么0000与F逻辑与,则全为0。

(3)选项A当选。

二、看B选项,a的高位为未知数,通过然后判断运算结果是否等于F,得出判断低四位是否全为0。

(1)a与 0x000F逻辑或运算中,任何数与1 作逻辑或运算都为1,a的高位与000F的高位作逻辑或运算中,高位不确定,可能是1,也可能是0。

(2)低四位与1111逻辑或运算中,同理不能确定,可能是1,也可能是0。排除B

三、先看C选项,a的高位为未知数,通过然后判断运算结果是否等于0,得出现在是判断低四位是否全为0。

(1)a与 0xFFF0逻辑异或运算中,0xFFF0换成十六进制即为:1111 1111 1111 0000

(2)相同为0,相异为1,高位不清楚,无法判断,排除C。

四、先看D选项,a的高位为未知数,通过然后判断运算结果是否等于F,得出判断低四位是否全为0。

(1)a与 0xFFF0逻辑与运算中,0xFFF0换成十六进制即为:1111 1111 1111 0000

(2)0xFFF0的低位是0,0与任何数逻辑与运算都为0,无法判断a的低位,排除D。

真题:对于逻辑表达式“x and y or not z”,and 、or、not分别是逻辑与、或、非运算,优先级从高到低位not、and、or,and、or为左结合,not为右结合,若进行短路计算,则(C)

  1. x为真时,整个表达式的值即为真,不需要计算y和z的值
  2. x为假时,整个表达式的值即为假,不需要计算y和z的值
  3. x为真时,根据y的值决定是否需要计算z的值
  4. x为假时,根据y的值决定是否需要计算z的值
     

(x and y)or (not z)

看选项A。A为真的时候,需要看Y的值决定,排除。
看选项B。A为假的时候,需要看z的值决定,排除。
看选项C。x为真的时候,需要看Y的值决定是否计算z,如果y为真,则不需要计算z。如果y为假,那么需要判断z是否为真,如果z为假,not z则为真,计算值。当选。
看选项D。X为假的时候,不需要看y的值(无论真假,都需要计算z的值),错误,排除。

6.校验码

 

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

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

相关文章

C++——二叉树排序树

文章目录1 二叉搜索树概念2 二叉搜索树操作与模拟实现2.1 二叉搜索树的查找非递归版本递归版本2.2 二叉搜索树的插入非递归版本递归版本2.3 二叉搜索树的删除非递归版本递归版本3 二叉搜索树的应用&#xff08;K模型、KV模型&#xff09;4 二叉搜索树的性能分析1 二叉搜索树概念…

Go语言设计与实现 -- 反射

Go的反射有哪些应用&#xff1f; IDE中代码的自动补全对象序列化fmt函数的相关实现ORM框架 什么情况下需要使用反射&#xff1f; 不能明确函数调用哪个接口&#xff0c;需要根据传入的参数在运行时决定。不能明确传入函数的参数类型&#xff0c;需要在运行时处理任意对象。 …

1.TCP、UDP区别、TCP/IP七层、四层模型、应用层协议(计网)

文章目录1.OSI 七层模型是什么&#xff1f;每一层的作用是什么&#xff1f;2.TCP/IP 四层模型是什么&#xff1f;每一层的作用是什么&#xff1f;应用层&#xff08;Application layer&#xff09;传输层&#xff08;Transport layer&#xff09;网络层&#xff08;Network lay…

百度工程师带你探秘C++内存管理

一、概述 ptmalloc是开源GNU C Library(glibc)默认的内存管理器&#xff0c;当前大部分Linux服务端程序使用的是ptmalloc提供的malloc/free系列函数&#xff0c;而它在性能上远差于Meta的jemalloc和Google的tcmalloc。服务端程序调用ptmalloc提供的malloc/free函数申请和释放内…

Datawhale组队学习:大数据 D2——分布式文件系统(HDFS)

妙趣横生大数据 Day2三、Hadoop 分布式文件系统(HDFS)1. 分布式文件系统2. HDFS 简介3. HDFS 体系结构4. HDFS存储原理数据冗余存储数据存储策略数据错误与恢复5. HDFS数据读写过程读写过程HDFS故障类型和其检测方法HDFS编程实验1. 本地和集群文件间操作2. 基本文件操作3. Hado…

Java基本语法【未完待续】

目录 一、注释方式 1、单行注释 // 2、多行注释 /*...*/ 3、文档注释 /**....*/ 二、标识符和关键字 三、数据类型 拓展及面试题讲解 1、整数拓展 进制 二进制0b 八进制0 十六进制0x 2、字符拓展 编码Unicode表 2字节 0~65536 3、字符串拓展 4、布尔值拓展 四、类型…

CleanMyMac X软件下载及详细功能介绍

mac平台的知名系统清理应用CleanMyMac在经历了一段时间的测试后&#xff0c;全新设计的X正式上线。与CleanMyMac3相比&#xff0c;新版本的UI设计焕然一新&#xff0c;采用了完全不同的风格。使用Windows电脑时&#xff0c;很多人会下载各类优化软件&#xff0c;而在Mac平台中&…

jsp高校教职工管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 jsp 高校教职工管理系统 是一套完善的web设计系统&#xff0c;对理解JSP java编程开发语言有帮助mvc模式 serlvetdaobean方式开发&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式 开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#…

tomcat安装和配置

目录 1.下载tomcat 2.解压tomcat压缩包 3.配置端口号 4.启动 命令行窗口日志乱码的解决 5.验证 tomcat 如果已经安装配置过jdk&#xff0c;则向下执行&#xff0c;若无&#xff0c;请先安装jdk。 1.下载tomcat 路径&#xff1a; Apache Tomcat - Apache Tomcat 9 Sof…

Windows 系统从零配置 Python 环境,安装CUDA、CUDNN、PyTorch 详细教程

文章目录1 配置 python 环境1.1 安装 Anaconda1.2 检查环境安装成功1.3 创建虚拟环境1.4 进入/退出 刚刚创建的环境1.5 其它操作1.5.1 查看电脑上所有已创建的环境1.5.2 删除已创建的环境2 安装 CUDA 和 CUDNN2.1 查看自己电脑支持的 CUDA 版本2.2 安装 CUDA2.3 安装 CUDNN2.4 …

LabVIEW中CPU和内存使用情况在NI分布式系统管理器中不可见

LabVIEW中CPU和内存使用情况在NI分布式系统管理器中不可见想使用NI分布式系统管理器监测网络连接实时控制器的CPU和内存使用情况。从左侧窗口的树中选择了感兴趣的实时目标&#xff0c;然后通过选择视图自动视图来确保启用自动查看。希望看到CPU/内存选项卡&#xff0c;但它有显…

算法导论【在线算法】—The Ski-Rental Problem、The Lost Cow Problem、The Secretary Problem

算法导论【在线算法】The Ski-Rental Problem问题描述在线算法证明The Lost Cow Problem问题描述在线算法类似问题—寻宝藏The Secretary Problem问题描述在线算法The Best Possible kThe Ski-Rental Problem 问题描述 假设你正在上滑雪课。每节课结束后&#xff0c;你决定&a…

【Element】el-table 表格

目录 ElementUI 表格分页&#xff08;每页20条&#xff09; 表格分页&#xff08;全部数据&#xff09; 表格排序&#xff08;全部数据&#xff09; 表格排序&#xff08;默认&#xff09; 两个el-table冲突 加载数据前显示“ 暂无数据 ” 表格项为路由 表头样式 树形…

Homebrew 安装遇到的问题

Homebrew 安装遇到的问题 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 文章目录Homebrew 安装遇到的问题前言一、安装二、遇到的问题1.提示 zsh: command not found: brew三、解决问题前言 使用 Homebrew 能够 安装 Apple&#xff08;或您的 Linux 系统&#…

React 合成事件理解

1 事件三个阶段 捕获、目标、处理 &#xff08;具体百度&#xff0c;后面有空补全&#xff09;2import React from "react";class Test extends React.Component {parentRef;childRef;constructor(props) {super(props);this.parentRef React.createRef();this.chil…

cmd 窗口、记事本打开后一片空白且几秒钟后闪退的问题解决方案汇总

前言 前段时间&#xff0c;电脑忽然出现了问题&#xff0c;首先是通过 微软应用商店 Microsoft Store 下载安装的 Snipaste 截图软件崩溃&#xff0c;不过将其卸载后&#xff0c;通过电脑管家下载后又可以正常使用了。 之后就是突然发现&#xff0c;记事本文本文档不能使用了…

分享112个HTML娱乐休闲模板,总有一款适合您

分享112个HTML娱乐休闲模板&#xff0c;总有一款适合您 112个HTML娱乐休闲模板下载链接&#xff1a;https://pan.baidu.com/s/15uBy1SVSckPPMM55fiudeQ?pwdkqfz 提取码&#xff1a;kqfz Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 Bootstrap视频网站模板 …

Terraform基础入门 (Infrastructure as Code)

文章目录前言介绍Terraform 术语Terraform 如何工作关于provider安装开启本地缓存demo1(dockernginx)demo2(dockerzookeeperkafka)参考资料前言 像写代码一样管理基础设施。 Terraform 使用较为高级的配置文件语法来描述基础设施&#xff0c;这个特性让你对配置文件进行版本化…

Ubuntu升级cmake

目录 1、下载cmake安装包 2、开始安装 3、查看cmake版本 参考链接&#xff1a; https://blog.csdn.net/qq_27350133/article/details/121994229 1、下载cmake安装包 cmake安装包下载&#xff1a;download | cmake 我们根据自身需求下载所需版本的cmake安装包&#xff0c;这…

万字干货 | 荔枝魔方基于云原生的架构设计与实践

近年来&#xff0c;荔枝集团在国内和海外的业务迅速发展&#xff0c;业务数据规模也是成几何式地增长&#xff0c;海量数据的计算分析场景、业务智能算法应用需求随之而生&#xff0c;为了快速地满足业务发展的需要&#xff0c;我们面临着诸多的技术挑战。技术挑战工程问题资源…