首页 > 其他分享 >计算机组成原理之浮点数的加减运算

计算机组成原理之浮点数的加减运算

时间:2024-10-13 09:53:38浏览次数:7  
标签:阶码 规格化 尾数 浮点数 加减 运算

计算机组成原理之浮点数的加减运算主要涉及以下几个步骤:

1、对阶:由于浮点数的阶码不同,小数点位置不同,不能直接进行尾数加减。首先求两数阶码之差,通过小数阶向大数阶看齐的原则,对阶码小的尾数进行移位(右移),每右移一位,阶码加1,直到两数阶码相等。

2、尾数加减:对阶后,尾数的小数点已经对齐,此时可按定点数加减运算规则进行加减运算。注意,尾数运算结果可能需要进行规格化处理。

3、规格化:规格化的目的是保证浮点数的精度。尾数加减后,若尾数最高位与符号位不同,则满足规格化要求;若相同,则需通过左移或右移尾数(同时调整阶码)进行规格化处理。
(1)左规:当尾数最高位与符号位相同,且尾数不是全0时,需将尾数左移一位,阶码减1,直到满足规格化要求。
(2)右规:在某些情况下(如尾数溢出),可能需要进行右规处理,即尾数右移一位,阶码加1,同时可能需要进行舍入处理。

4、舍入:由于尾数位数有限,移位或运算过程中可能会产生误差,因此需要进行舍入处理。常见的舍入方法有“0舍1入法”和“末位恒置1法”。

5、溢出判断:最后,根据阶码和尾数的运算结果判断是否有溢出发生。若阶码超出其表示范围,则发生溢出。

标签:阶码,规格化,尾数,浮点数,加减,运算
From: https://blog.csdn.net/qq_39311377/article/details/142662842

相关文章

  • Leetcode--位运算
     小伙伴们,大家好。今天给大家介绍一下位运算。 首先给大家介绍一下常用的位运算符号: &(按位与) |(按位或)^(按位异或)<<(左移)>>(右移) 以a=4,b=6为例: 4的二进制为100,6的二进制为110(假设前名的0省略) a&b=100(每一位进行运算时如果均为1则该位为1否则为0) a|b=110(每......
  • 浮点数取整数部分
    在C语言中,可以通过以下几种方法获取浮点数的整数部分(不进行四舍五入):1.类型转换法(简单):直接将浮点数转换为整数类型,舍弃小数部分。#include<stdio.h>intmain(){floatf=123.456;inti=(int)f;//i的值为123printf("整数部分:%d\n",i);......
  • 数据类型及运算
    数据类型名称字节范围char1(characterorinteger)8bits有符号(signed):-128~127无符号:0~225short2短整数16bitssigned:-32768~327670~65535long4长整数32bitssigned:-2147483648~21474836470~4294967295int4integer......
  • JavaScript-条件运算符
    条件运算符条件运算符主要是通过if和问号(?)实现。if语句if语句后面小括号内是判断条件,之后大括号内是在判断条件为真的情况下执行的语句内容。if后面可以接着跟elseif,也可以跟else,但是else必须放在最后,即所有的if和elseif都执行完了之后才能是else。注意在多个ifelse判断的语句......
  • 运算符的基础
    运算符一:二元运算符publicclassDemo01{publicstaticvoidmain(String[]args){//二元运算符//Ctrl+D:复制当前行到下一行inta=10;intb=20;intc=25;intd=25;System.out.println(a+b);......
  • 信息学奥赛复赛复习15-CSP-J2022-01乘方-数据类型、类型转换、数据类型溢出、指数、模
    PDF文档公众号回复关键字:202410091P8813[CSP-J2022]乘方[题目描述]小文同学刚刚接触了信息学竞赛,有一天她遇到了这样一个题:给定正整数a和b,求a^b的值是多少。a^b即b个a相乘的值,例如2^3即为3个2相乘,结果为2×2×2=8“简单!”小文心想,同时很快就写出了......
  • JavaScript中的运算符
    一、运算符分类运算符:(operator):也称之为叫操作符。是用来实现赋值、比较和执行运算等功能的符号javaScript中常用的运算符:算数运算符递增和递减运算符比较运算符逻辑运算符赋值运算符1.算数运算符概述:算数运算使用的符号,用于执行两个变量或值得算数运算运算符描述......
  • C++ day04(友元 friend、运算符重载、String字符串)
    目录【1】友元friend1》概念2》友元函数 3》友元类 4》友元成员函数 【2】运算符重载1》概念2》友元函数运算符重载 ​编辑 3》成员函数运算符重载4》赋值运算符与类型转换运算符重载 5》注意事项【3】String字符串类【1】友元friend1》概念定义:......
  • 课上测试:位运算(AI)
    2.使用位运算编写并调用下面函数,把当前时间(使用C库函数获得)设置到TIME中,给出代码,使用git记录过程。为了使用位运算将当前时间设置到一个自定义的TIME结构体或变量中(尽管通常我们不会直接用位运算来处理时间,因为时间通常是由多个独立的字段如小时、分钟、秒等组成的),我们可......
  • 位运算与逻辑运算简介,用位运算表示逻辑运算
    目录一、什么是位运算1.1按位与,即&1.2按位或,即|1.3按位取反,即~1.4按位异或,即^二、什么是逻辑运算2.1逻辑与,即&&2.2逻辑或,即||2.3逻辑非,即!三、位运算与逻辑运算的区别四、用位运算表示逻辑运算4.1用位运算表示逻辑非“!”4.2用位运算表示逻辑与......