计算机组成原理 第六章 计算机的运算方法 Part1

2024-06-03 01:52

本文主要是介绍计算机组成原理 第六章 计算机的运算方法 Part1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

无符号数和有符号数

1.无符号数

寄存器位数反映无符号数的表示范围

8位——0~255
16位——0~65535

 2.有符号数

 原码表示法

  • 原码简单直观
  • 举例

原码表示法的局限性  

原码的特点:简单、直观 

但是用原码做加减法时,应分但是用原码做加减法时,应分情况讨论: 情况讨论:  

可否简化? 符号位与数值位一起参加运算;只做加法,不做减法

补码表示法 

概念

  1. 补码的提出:解决原码的加减符号不同意问题(用加法代替减法)
  2. 时钟:6点 -3 可用 + 9 代替-都变成3点,称 + 9 是 3 以 12 为模的补数(mod 12)
  3. 结论:
    一个负数加上 “模” 即得该负数的补数
    一个正数和一个负数互为补数时它们绝对值之和即为模数

特征

 不同于原码,0 在补码中只有 00…0 一种表示形式

正数的补码与其原码相同

负数的补码(m 位)与其相反数的补码相加,结果 等于模(2^{m}),因此:
负数的补码可由其相反数的补码 按位取反,末位加 1
正数的补码也可由其相反数的补码 按位取反,末位加 1 求得
注意:-2^{m-1}的补码 100…0 是一个特例,不适用上述
规律
求得

补码定义

当真值为负时,补码 可用 原码除符号位外每位取反,末位加 1 求得 

举例

 小结

最高位为符号位,手写时整数用“, ” 小数用“.”将数值部分和符号位分隔

 对于正数,原码 = 补码

对于负数 ,符号位为 1,其数值部分:

原码除符号位外每位取反末位加 1 ——》 补码
补码除符号位外每位取反末位加1 ——》 原码
注意 100…0 这个特例
课后例题6.2
反码表示法

除符号位每位取反

比较
移码表示法

移码和补码的比较:补码与移码只差一个符号位

真值、补码和移码的对照

特点

最小真值的移码为全 0

用移码表示浮点数的阶码能方便地判断浮点数的阶码大小

这篇关于计算机组成原理 第六章 计算机的运算方法 Part1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1025711

相关文章

使用Java读取本地文件并转换为MultipartFile对象的方法

《使用Java读取本地文件并转换为MultipartFile对象的方法》在许多JavaWeb应用中,我们经常会遇到将本地文件上传至服务器或其他系统的需求,在这种场景下,MultipartFile对象非... 目录1. 基本需求2. 自定义 MultipartFile 类3. 实现代码4. 代码解析5. 自定

Python文本相似度计算的方法大全

《Python文本相似度计算的方法大全》文本相似度是指两个文本在内容、结构或语义上的相近程度,通常用0到1之间的数值表示,0表示完全不同,1表示完全相同,本文将深入解析多种文本相似度计算方法,帮助您选... 目录前言什么是文本相似度?1. Levenshtein 距离(编辑距离)核心公式实现示例2. Jac

C#高效实现Word文档内容查找与替换的6种方法

《C#高效实现Word文档内容查找与替换的6种方法》在日常文档处理工作中,尤其是面对大型Word文档时,手动查找、替换文本往往既耗时又容易出错,本文整理了C#查找与替换Word内容的6种方法,大家可以... 目录环境准备方法一:查找文本并替换为新文本方法二:使用正则表达式查找并替换文本方法三:将文本替换为图

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

SQL Server 查询数据库及数据文件大小的方法

《SQLServer查询数据库及数据文件大小的方法》文章介绍了查询数据库大小的SQL方法及存储过程实现,涵盖当前数据库、所有数据库的总大小及文件明细,本文结合实例代码给大家介绍的非常详细,感兴趣的... 目录1. 直接使用SQL1.1 查询当前数据库大小1.2 查询所有数据库的大小1.3 查询每个数据库的详

Java实现本地缓存的四种方法实现与对比

《Java实现本地缓存的四种方法实现与对比》本地缓存的优点就是速度非常快,没有网络消耗,本地缓存比如caffine,guavacache这些都是比较常用的,下面我们来看看这四种缓存的具体实现吧... 目录1、HashMap2、Guava Cache3、Caffeine4、Encache本地缓存比如 caff

MyBatis-Plus 与 Spring Boot 集成原理实战示例

《MyBatis-Plus与SpringBoot集成原理实战示例》MyBatis-Plus通过自动配置与核心组件集成SpringBoot实现零配置,提供分页、逻辑删除等插件化功能,增强MyBa... 目录 一、MyBATis-Plus 简介 二、集成方式(Spring Boot)1. 引入依赖 三、核心机制

Java 中编码与解码的具体实现方法

《Java中编码与解码的具体实现方法》在Java中,字符编码与解码是处理数据的重要组成部分,正确的编码和解码可以确保字符数据在存储、传输、读取时不会出现乱码,本文将详细介绍Java中字符编码与解码的... 目录Java 中编码与解码的实现详解1. 什么是字符编码与解码?1.1 字符编码(Encoding)1

Python Flask实现定时任务的不同方法详解

《PythonFlask实现定时任务的不同方法详解》在Flask中实现定时任务,最常用的方法是使用APScheduler库,本文将提供一个完整的解决方案,有需要的小伙伴可以跟随小编一起学习一下... 目录完js整实现方案代码解释1. 依赖安装2. 核心组件3. 任务类型4. 任务管理5. 持久化存储生产环境

Python批量替换多个Word文档的多个关键字的方法

《Python批量替换多个Word文档的多个关键字的方法》有时,我们手头上有多个Excel或者Word文件,但是领导突然要求对某几个术语进行批量的修改,你是不是有要崩溃的感觉,所以本文给大家介绍了Py... 目录工具准备先梳理一下思路神奇代码来啦!代码详解激动人心的测试结语嘿,各位小伙伴们,大家好!有没有想