当前位置: 首页 > news >正文

数值代数及方程数值解:预备知识——二进制及浮点数

文章目录

    • 二进制
    • IEEE浮点数

本篇文章的前置知识:数学分析

二进制

命题:二进制转化为十进制
二进制的数字表示为 ⋯ b 2 b 1 b 0 . b − 1 b − 2 ⋯ \cdots b_2b_1b_0.b_{-1}b_{-2}\cdots b2b1b0.b1b2这等价于十进制下的
⋯ b 2 × 2 2 + b 1 × 2 1 + b 0 × 2 0 + b − 1 × 2 − 1 + b − 2 × 2 − 2 + ⋯ \cdots b_2\times 2^{2}+b_1\times 2^{1}+b_0\times 2^0+b_{-1}\times 2^{-1}+b_{-2}\times 2^{-2}+\cdots b2×22+b1×21+b0×20+b1×21+b2×22+

命题:十进制转化为二进制
整数部分:十进制整数不断除2,记录除数及余数,直至除数为0,从后往前依次写下余数即为二进制下的数字,如下例 ( 53 ) 10 (53)_{10} (53)10
53 ÷ 2 = 26 余 1 26 ÷ 2 = 13 余 0 13 ÷ 2 = 6 余 1 6 ÷ 2 = 3 余 0 3 ÷ 2 = 1 余 1 1 ÷ 2 = 0 余 1 53\div 2= 26 \text{余} 1\\ 26\div 2=13 \text{余} 0\\ 13\div 2=6 \text{余} 1\\ 6\div 2=3 \text{余} 0\\ 3\div 2=1 \text{余} 1\\ 1\div 2=0 \text{余} 1 53÷2=26126÷2=13013÷2=616÷2=303÷2=111÷2=01则得 ( 53 ) 10 = ( 110101. ) 2 (53)_{10}=(110101.)_2 (53)10=(110101.)2

小数部分:十进制小数不断乘2,记录整数部分,从前往后依次写下整数部分,如下例 ( 0.7 ) 10 (0.7)_{10} (0.7)10
0.7 × 2 = 0.4 + 1 0.4 × 2 = 0.8 + 0 0.8 × 2 = 0.6 + 1 0.6 × 2 = 0.2 + 1 0.2 × 2 = 0.4 + 0 ⋯ 0.7\times 2=0.4+1\\ 0.4\times 2=0.8+0\\ 0.8\times 2=0.6+1\\ 0.6\times 2=0.2+1\\ 0.2\times 2=0.4 +0\\ \cdots 0.7×2=0.4+10.4×2=0.8+00.8×2=0.6+10.6×2=0.2+10.2×2=0.4+0发现计算过程开始循环,故 ( 0.7 ) 10 = ( 0.1 0110 ‾ ) 2 (0.7)_{10}=(0.1\overline{0110})_2 (0.7)10=(0.10110)2

IEEE浮点数

定义:IEEE浮点数
标准的IEEE浮点数为 ± 1. a b c d e f g … z × 2 p \pm 1.abcdefg\dots z \times 2^p ±1.abcdefgz×2p其中 a b c d e f g … z abcdefg\dots z abcdefgz 取值只有 0 或 1
该浮点数在计算机中的储存方式为 1 a b c d e f g … z p 1\hspace{1ex} abcdefg\dots z\hspace{1ex}p 1abcdefgzp
其中

  • 首位表示正负号,0代表正数,1代表负数
  • 后面部分称为尾数,是有效数字
  • 中间部分称为指数,指明小数点的位置

例如:9的2进制表示为1001,浮点数表示为0 11 001,第一个数 0 表示该数为正数,尾数001表示这个数的有效数字为 ( 1.001 ) 2 (1.001)_2 (1.001)2(默认首位为1),第二个数 ( 11 ) 2 = 3 (11)_2=3 (11)2=3表示这个数的指数为3,即把小数点向右移动3位

定义:一般的浮点数系统(描述性定义)
考虑 R \mathbb{R} R 的某离散子集 F \mathrm{F} F F \mathrm{F} F的元素形如 0 或 x = ± m β t β e x=\pm \dfrac{m}{\beta^t}\beta^e x=±βtmβe,其中

  • β \beta β 为不小于2的整数,称为基数;(即 β \beta β 进制)
  • t t t 为不大于1的整数,称为精度;(即该系统能表示的最大位数尾数)
  • m ∈ [ 1 , β t ] m\in[1,\beta^t] m[1,βt]是整数,e为任意整数(即指数);
  • 若限制 m m m 的范围为 [ β t − 1 , β t − 1 ] [\beta^{t-1},\beta^t-1] [βt1,βt1],则可使 m m m 唯一;此时 ± ( m β t ) \pm(\dfrac{m}{\beta^t}) ±(βtm) 称为 x x x 的尾数;

注:对于那些位数超过精度的数字,必须进行截断并舍入(零舍一入),才能保存在计算机中,故浮点数集 F F F 在实数 R \mathbb{R} R 中是离散的

定义:机器 ϵ \epsilon ϵ
ε m a c h i n e = 1 2 β 1 − t \varepsilon_{machine}=\dfrac{1}{2}\beta^{1-t} εmachine=21β1t表示两个相邻的浮点数之间的距离的一半

注:有的书上也定义为两个相邻的浮点数之间的距离

定义:单精度、双精度浮点数

单精度浮点数:1位符号,8位指数,23位尾数, ε m a c h i n e = 2 − 24 \varepsilon_{machine}=2^{-24} εmachine=224

双精度浮点数:1位符号,11位指数,52位尾数, ε m a c h i n e = 2 − 53 \varepsilon_{machine}=2^{-53} εmachine=253

注:
单精度浮点数也称 32 位浮点数 1 + 8 + 23 = 32 1+8+23=32 1+8+23=32
双精度浮点数也称 64 位浮点数 1 + 11 + 52 = 64 1+11+52=64 1+11+52=64

定义:浮点数函数
f l : R → F fl:\mathbb{R}\to F fl:RF 表示将实数映射为离它最近的浮点数的函数

命题:用浮点数保存实数的舍入误差
∀ x ∈ R , ∣ x − f l ( x ) ∣ ∣ x ∣ ≤ ε m a c h i n e \forall x\in\mathbb{R},\dfrac{|x-fl(x)|}{|x|}\leq \varepsilon_{machine} xR,xxfl(x)εmachine或等价地说,
∀ x ∈ R , ∃ ϵ , ∣ ϵ ∣ ≤ ε m a c h i n e , s . t . f l ( x ) = x ( 1 + ϵ ) \forall x\in\mathbb{R},\exists \epsilon,|\epsilon|\leq\varepsilon_{machine},s.t.fl(x)=x(1+\epsilon) xR,ϵ,ϵεmachine,s.t.fl(x)=x(1+ϵ)

浮点数运算的基本公理

任取 x , y ∈ F x,y\in F x,yF,令 ∗ \ast 表示四则运算的任一个, ⊛ \circledast 表示相应的浮点数的四则运算,则 x ⊛ y = f l ( x + y ) x\circledast y=fl(x+y) xy=fl(x+y)

等价地,有如下的浮点数运算公理:
∀ x , y ∈ F , ∃ ϵ , ∣ ϵ ∣ ≤ ε m a c h i n e , s . t . x ⊛ y = ( x ∗ y ) ( 1 + ϵ ) \forall x,y\in F,\exists \epsilon,|\epsilon|\leq\varepsilon_{machine},s.t.x\circledast y=(x\ast y)(1+\epsilon) x,yF,ϵ,ϵεmachine,s.t.xy=(xy)(1+ϵ)

注: ε m a c h i n e \varepsilon_{machine} εmachine定义的修正:将 ε m a c h i n e \varepsilon_{machine} εmachine定义为满足上述公理的最小值,这样定义不会对运算产生显著影响

一般来说,我们使用的计算机是符合浮点数运算的基本公理的

参考书籍
《数值分析》Timothy Sauer 著,裴玉茹,马赓宇 译
《Numerical Linear Algebra》Lloyd N.Trefethen , David Bau 著

相关文章:

数值代数及方程数值解:预备知识——二进制及浮点数

文章目录 二进制IEEE浮点数 本篇文章的前置知识:数学分析 二进制 命题:二进制转化为十进制 二进制的数字表示为 ⋯ b 2 b 1 b 0 . b − 1 b − 2 ⋯ \cdots b_2b_1b_0.b_{-1}b_{-2}\cdots ⋯b2​b1​b0​.b−1​b−2​⋯这等价于十进制下的 ⋯ b 2 2 …...

新数字时代的启示:揭开Web3的秘密之路

在当今数字时代,随着区块链技术的不断发展,Web3作为下一代互联网的概念正逐渐引起人们的关注和探索。本文将深入探讨新数字时代的启示,揭开Web3的神秘之路,并探讨其在未来的发展前景。 1. Web3的定义与特点 Web3是对互联网未来发…...

算法——动态规划:01背包

原始01背包见下面这篇文章:http://t.csdnimg.cn/a1kCL 01背包的变种:. - 力扣(LeetCode) 给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 简化一…...

写作类AI推荐(二)

本章要介绍的写作AI如下: 火山写作 主要功能: AI智能创作:告诉 AI 你想写什么,立即生成你理想中的文章AI智能改写:选中段落句子,可提升表达、修改语气、扩写、总结、缩写等文章内容优化:根据全文…...

分寝室(20分)(JAVA)

目录 题目描述 输入格式: 输出格式: 输入样例 1: 输出样例 1: 输入样例 2: 输出样例 2: 题解: 题目描述 学校新建了宿舍楼,共有 n 间寝室。等待分配的学生中,有女…...

Spring 源码调试问题 ( List.of(“bin“, “build“, “out“); )

Spring 源码调试问题 文章目录 Spring 源码调试问题一、问题描述二、解决方案 一、问题描述 错误&#xff1a;springframework\buildSrc\src\main\java\org\springframework\build\CheckstyleConventions.java:68: 错误: 找不到符号 List<String> buildFolders List.of…...

Centos7安装RTL8111网卡驱动

方法一&#xff1a; // 安装pciutils # yum install -y pciutils // 查看pci设备信息 # lspci | grep -i Ethernet 09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 03) // 上面看到是Re…...

吉时利KEITHLEY2460数字源表

181/2461/8938产品概述&#xff1a; Keithley 2460 高电流源表源测量单元 (SMU) 将先进的触摸、测试和发明技术带到您的指尖。Keithley 2460 将创新的图形用户界面 (GUI) 与电容式触摸屏技术相结合&#xff0c;使测试变得直观并最大限度地缩短学习曲线&#xff0c;从而帮助工程…...

数据库原理(含思维导图)

数据库原理笔记&#xff0c;html与md笔记已上传 1.绪论 发展历程 记住数据怎么保存&#xff0c;谁保存数据&#xff0c;共享性如何&#xff0c;独立性如何 人工管理阶段 数据不保存应用程序管理数据数据不共享数据不具有独立性 文件系统阶段 数据可以长期保存文件系统管…...

数据结构(六)——图

六、图 6.1 图的基本概念 图的定义 图&#xff1a;图G由顶点集V和边集E组成&#xff0c;记为G (V, E)&#xff0c;其中V(G)表示图G中顶点的有限非空集&#xff1b;E(G) 表示图G中顶点之间的关系&#xff08;边&#xff09;集合。若V {v1, v2, … , vn}&#xff0c;则用|V|…...

Android-AR眼镜屏幕显示

Android-AR眼镜 前提&#xff1a;Android手持设备 需要具备DP高清口 1、创建Presentation&#xff08;双屏异显&#xff09; public class MyPresentation extends Presentation {private PreviewSingleBinding binding;private ScanActivity activity;public MyPresentatio…...

蓝桥集训之货币系统

蓝桥集训之货币系统 核心思想&#xff1a;背包 #include <iostream>#include <cstring>#include <algorithm>using namespace std;const int N 30,M 10010;typedef long long LL;LL f[M];int w[N];int n,m;int main(){cin>>n>>m;for(int i1;i&…...

基于微信小程序的校园服务平台设计与实现(程序+论文)

本文以校园服务平台为研究对象&#xff0c;首先分析了当前校园服务平台的研究现状&#xff0c;阐述了本系统设计的意义和背景&#xff0c;运用微信小程序开发工具和云开发技术&#xff0c;研究和设计了一个校园服务平台&#xff0c;以满足学生在校园生活中的多样化需求。通过引…...

QT+Opencv+yolov5实现监测

功能说明&#xff1a;使用QTOpencvyolov5实现监测 仓库链接&#xff1a;https://gitee.com/wangyoujie11/qt_yolov5.git git本仓库到本地 一、环境配置 1.opencv配置 将OpenCV-MinGW-Build-OpenCV-4.5.2-x64文件夹放在自己的一个目录下&#xff0c;如我的路径&#xff1a; …...

【Python-Docx库】Word与Python的完美结合

【Python-Docx库】Word与Python的完美结合 今天给大家分享Python处理Word的第三方库&#xff1a;Python-Docx。 什么是Python-Docx&#xff1f; Python-Docx是用于创建和更新Microsoft Word&#xff08;.docx&#xff09;文件的Python库。 日常需要经常处理Word文档&#xf…...

吴恩达深度学习笔记:浅层神经网络(Shallow neural networks)3.6-3.8

目录 第一门课&#xff1a;神经网络和深度学习 (Neural Networks and Deep Learning)第三周&#xff1a;浅层神经网络(Shallow neural networks)3.6 激活函数&#xff08;Activation functions&#xff09;3.7 为什么需要非线性激活函数&#xff1f;&#xff08;why need a non…...

盘点最适合做剧场版的国漫,最后一部有望成为巅峰

最近《完美世界》动画官宣首部剧场版&#xff0c;主要讲述石昊和火灵儿的故事。这个消息一出&#xff0c;引发了很多漫迷的讨论&#xff0c;其实现在已经有好几部国漫做过剧场版&#xff0c;还有是观众一致希望未来会出剧场版的。那么究竟是哪些国漫呢&#xff0c;下面就一起来…...

Altium Designer许可需求分析

在电子设计的世界中&#xff0c;Altium Designer已成为设计师们的得力助手。然而&#xff0c;如何进行有效的许可需求分析&#xff0c;以确保软件的高效使用和企业的可持续发展&#xff1f;本文将带您了解如何进行Altium Designer的许可需求分析&#xff0c;让您在设计的道路上…...

[c++]类和对象常见题目详解

本专栏内容为&#xff1a;C学习专栏&#xff0c;分为初阶和进阶两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握C。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库&…...

【c++】类和对象(五)赋值运算符重载

&#x1f525;个人主页&#xff1a;Quitecoder &#x1f525;专栏&#xff1a;c笔记仓 朋友们大家好&#xff0c;本篇文章带大家认识赋值运算符重载&#xff0c;const成员&#xff0c;取地址及const取地址操作符重载等内容 目录 1.赋值运算符重载1.1运算符重载1.1.1特性&#…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

Frozen-Flask :将 Flask 应用“冻结”为静态文件

Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是&#xff1a;将一个 Flask Web 应用生成成纯静态 HTML 文件&#xff0c;从而可以部署到静态网站托管服务上&#xff0c;如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

拉力测试cuda pytorch 把 4070显卡拉满

import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试&#xff0c;通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小&#xff0c;增大可提高计算复杂度duration: 测试持续时间&#xff08;秒&…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

Xen Server服务器释放磁盘空间

disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用

文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么&#xff1f;1.1.2 感知机的工作原理 1.2 感知机的简单应用&#xff1a;基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...

C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...

[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.

ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #&#xff1a…...

【Linux】自动化构建-Make/Makefile

前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具&#xff1a;make/makfile 1.背景 在一个工程中源文件不计其数&#xff0c;其按类型、功能、模块分别放在若干个目录中&#xff0c;mak…...