计算机组成原理 数据的表示与运算

文章目录

  • 数据的表示与运算
    • 数据表示
    • 定点数的表示与运算
      • 定点数的表示
        • 无符号数
        • 有符号数
        • 定点整数
        • 定点小数
        • 四码
          • 反码
          • 补码
          • 移码
        • 总结
      • 定点数的运算
        • 算术移位
          • 原码
          • 反码
          • 补码
          • 总结
        • 逻辑位移
        • 循环位移
        • 总结
      • 加减运算
        • 原码加减法
        • 补码加减法
      • 溢出判断
        • 采用一位符号位
    • 浮点数的表示与运算
      • 表示
      • IEEE 754
      • 浮点数加减法

数据的表示与运算

数据表示

常见二进制数据
在这里插入图片描述

真值和机器数
在这里插入图片描述

定点数的表示与运算

定点数的表示与运算
表示
运算
无符号数
有符号数
原码
补码
反码
移码
移位运算
加减运算
乘法运算
除法运算

概念

  • 点: 其实就是小数点
  • 定点数: 小数点的位置固定
  • 浮点数: 小数点的位置不固定
  • 类似于我们生活中使用的常数
  • 二进制浮点数: 类似于科学计数法
    例子
    定点数: 150.408
    浮点数: 1.50408*102

定点数的表示

无符号数

整个机器字长的全部二进制位均为数值位,没有符号位,相当于数的绝对值
在这里插入图片描述

无符号数的表示范围
假设我们的计算机是8位的,那么其实我们就可以表示8bit位以内的数据其实也就是:
0000 0000-1111 1111
0-255
如果我们不采用无符号数,那么其实我们能够表示的数据范围就会发生改变其实能够真正表示数据的是不是只有7位了,还有一位我们需要作为符号位。

有符号数

表示
在这里插入图片描述

约定: 用X表示真值,用【X]原表示原码,[X]补表示补码,[X]反表示反码,[X]移表示移码
约定: 用X表示真值,用[X]原表示原码,[X]补表示补码,[X]反表示反码,[X]移表示移码
用尾数 (也就是数值部分) 表示真值的绝对值
在这里插入图片描述

定点整数

若机器字长为n+1位,则尾数为n位
原码整数表示范围:
− ( 2 n − 1 ) ≤ x ≤ ( 2 n − 1 ) -(2^n-1)≤x≤(2^n-1) (2n1)x(2n1)
在这里插入图片描述

定点整数的特点

  • 零:0.0000000
  • 零:1.0000000

所以0的原码整数在计算机内部有两种表示形式,+0和-0

  • 正数:有2n-1个
  • 负数:有2n-1个
  • 零:有一个
  • 总共:2N+1-1个

但是n+1位应该对应有2n+1种状态,真值0其实占用了两种状态,合理
在这里插入图片描述

定点小数
  • 若机器字长为n+1位,则尾数为n位
    原码小数表示范围
    − ( 1 − 2 − n ) ≤ x ≤ ( 1 − 2 − n ) -(1-2^{-n})≤x≤(1-2^{-n}) (12n)x(12n)
  • 同样,在这里真值0其实也占用了两种状态也就是有 + 0和-0两种形式
  • 其实原码的定点整数和定点小数的分布是关于原点对称的
    在这里插入图片描述
四码
反码

有符号数的定点表示 (反码)

  • 正数: 反码和原码相同
  • 负数: 数值位全部取反

反码特征:

  • 反码整数的表示范围
    − ( 2 n − 1 ) ≤ x ≤ ( 2 n − 1 ) -(2^n-1)≤x≤(2^n-1) (2n1)x(2n1)
  • 反码小数的表示范围
    − ( 1 − 2 − n ) ≤ x ≤ ( 1 − 2 − n ) -(1-2^{-n})≤x≤(1-2^{-n}) (12n)x(12n)
  • 同样,在这里无论是小数还是整数,真值0其实也占用了两种状态也就是有 +0和-0两种形式。
  • +零 0.0000000 -零 1,1111111
    所以0的反码整数在计算机内部也有两种表示形式

列子
若机器字长为n+1位,则尾数为n位我们假设机器字长为8位。
+9
[X]原=0,0001001   [X]反=0,0001001
-9
[X]原=1,0001001   [X]度=1,1110110
+0.75
[X]原=0.1100000   [X]反=0.1100000
-0.75
[X]原=1.1100000  [X]度=1.0011111

反码的用途
(1) 其中一个用途就是“原码”转换成“补码”的一个中间状态
(2) 还可以应用于系统环境设置,如linux平台的目录和文件的默认权限的设置,就是使用反码原理

补码

有符号数的定点表示 (补码)

  • 正数: 补码和原码相同
  • 负数: 原码数值位全部取反(得到反码),未位+1

补码特征:

  • [+0]原=0,0000000   [-0]原=1,0000000
    [+0]反=0,0000000   [-0]反=1,1111111
    [+0]补=0,0000000   [-0]补=0,0000000
  • 这里不一样的是,真值0的补码只有一种表示形式,多出来了一个1,0000000
  • 补码整数的表示范围
    − 2 n − ≤ x ≤ ( 2 n − 1 ) -2^n-≤x≤(2^n-1) 2nx(2n1)
  • 补码小数的表示范围
    − 1 ≤ x ≤ ( 1 − 2 − n ) -1≤x≤(1-2^{-n}) 1x(12n)
  • 规定,补码整数 1 , 0000000 = − 2 7 1,0000000=-2^7 1,0000000=27   规定,补码小数1.0000000=-1

例子
若机器字长为n+1位,则尾数为n位
我们假设机器字长为8位
+9
[X]原=0,0001001   [X]补=0,0001001
-9
[X]原=1,0001001   [X]反=1,1110110   [X]补=1,1110111
+0.75
[X]原=0.1100000   [X]补=0.1100000
-0.75
[X]原=1.1100000   [X]反=1.0011111   [X]补=1.0100000

移码

有符号数的定点表示(移码) (只有整数)
方法1: 在补码的基础上将符号位取反
方法2: 在真值的基础上加上 2 n 2^n 2n

移码的特征

  • [+0]补=0,0000000   [+0]移=1,0000000
    [-0]补=0,0000000   [-0]移=1,0000000
  • 所以真值0的移码也只有一种表示形式,1,0000000其实就表示0
  • 移码的表示范围
    − 2 n ≤ x ≤ ( 2 n − 1 ) -2^n≤x≤(2^n-1) 2nx(2n1)

例子
若机器字长为n+1位,则尾数为n位 我们假设机器字长为8位。
+9
[X]原=0,0001001   [X]补=0,0001001   [X]移=1,0001001
-9
[X]原=1,0001001   [X]补=1,1110111   [X]移=0,1110111

总结

在这里插入图片描述

定点数的运算

[概念] 移位运算
算术移位、逻辑移位、循环移位

算术移位
原码

原码算术右移:高位补0,低位移除

  • 若丢弃位=0,相当于除2,;
  • 若丢弃位不等0,会丢失精度;

在这里插入图片描述

原码算术左移: 符号位不动,数值位低位补0,高位移除

  • 若丢弃位=0,相当于*2;
  • 若丢弃位不等于0,会出现严重误差
    在这里插入图片描述
反码

(1) 正数反码算术移位: (和原码完全相同)

  • 符号位不动,对数值位操作。
  • 右移:高位补0,低位舍弃;
  • 左移: 低位补0,高位舍弃;
  • 注意精度和误差

(2)负数反码算术移位

  • 符号位不动,对数值位操作。
  • 右移:高位补1,低位舍弃;
  • 左移: 低位补1,高位舍弃;
  • 注意精度和误差
    在这里插入图片描述
补码

(1) 正数补码算术移位: (和原码完全相同)

  • 符号位不动,对数值位操作。
  • 右移:高位补0,低位舍弃
  • 左移: 低位补0,高位舍弃;
  • 注意精度和误差

(2) 负数补码算术移位

  • 符号位不动,对数值位操作
  • 右移(同反码): 高位补1,低位舍弃;
  • 左移(同原码): 低位补0,高位舍弃:
  • 注意精度和误差

在这里插入图片描述

在这里插入图片描述

总结

在这里插入图片描述

逻辑位移

无论什么数:

  • 右移:高位补0,低位舍弃;
  • 左移: 低位补0,高位舍弃

在这里插入图片描述

在这里插入图片描述

循环位移

在这里插入图片描述

在这里插入图片描述

总结

在这里插入图片描述

加减运算

原码加减法

概念
(1)加法器直接对原码进行计算可能会出错
(2) 加法规则:

  • 先判断符号位,
    • 若相同,则绝对值相加,结果符号位不变;若不同,则做减法,绝对值大的数减去绝对值小的数,结果的符号与绝对值大的数相同

(3)减法规则:
两个原码表示的数相减,首先将减数符号取反,然后将被减数与符号取反后的减数按原码加法进行运算
(4)运算时注意机器字长,当左边出现溢出时,将溢出位丢掉

原码的加法运算

  • 正+正一绝对值做加法,结果为正
  • 负+负 一绝对值做加法,结果为负
  • 正+负 一绝对值大的减绝对值小的,符号同绝对值大的数
  • 负+正一绝对值大的减绝对值小的,符号同绝对值大的数

原码的减法运算
原码的减法运算,"减数"符号取反,转变为加法

  • 正-负一正+正
  • 负-正一负+负
  • 正-正一正+负
  • 负-负一负+正
补码加减法

使用补码进行加法运算,当结果不超过机器的表示范围时,有以下结论:

  • 用补码表示的两数进行加法运算,其结果仍为补码;
  • [X+Y]补=[X]补土[Y]补(mod2);
  • 符号位与数值位一样参与运算
  • 符号位与数值位按同样规则一起参与运算,符号位运算产生的进位要丢掉,结果的符号位由运算得

例子
(1)X=+13,Y= -14,则[]补=01101,[Y]补=10010
[X+Y]补=01101+10010=11111,因此X+Y=-1
(2)X=+0.1001,Y=-0.0011,则[X]补=0.1001,[Y]补=1.1101
[X+Y]补=0.1001+1.1101=0.0110,因此X+Y=0.0110
(3)X=+11,Y= +4,则[X]补=01011,[Y]补=00100 ,[-Y]补=11100
[X-Y]补= [X]补+[-Y]补=01011+11100=00111,
因此X-Y=7

(1)X=+13,Y=+4,则[X]补=01101,[Y]补=00100
[X+Y]补=01101+00100=10001
从符号位来看是一个负数,显然错误。
(2)X=+0.1001,Y=+0.1001,则[X]补=0.1001,[Y]补=0.1001
X+Y补=0.1001+0.1001=1.0010
从符号位来看是一个负数,显然错误

上述现象称为溢出,即两个定点数经过加减法运算后,结果超出了机器所能表示的范围,此时的结果无效。
因此.在定点加减运算过程中,必须对结果是否溢出进判断。

溢出判断

正+正 一结果为负,称为正溢;
负+负 结果为正,称为负溢。
注意:
正-负->正+正
负-正->负+负
在这里插入图片描述

常用的判别溢出方法有以下3种。
1)符号比较法
2)双进位法
3)双符号位法

采用一位符号位

由于减法运算在机器中是用加法器实现的,因此无论是加法还是减法,只要参加操作的两个数符号相同,结果又与原操作数符号不同,则表示结果溢出

浮点数的表示与运算

浮点数表示与运算
一般浮点数的表示
IEEE 745
浮点数的加减法
浮点数的乘除法
加法器

表示

概念
定点数: 就是小数点位置不变的数
浮点数: 浮点数是指小数点位置可以浮动的数据,通常表示如下

  • N 为浮点数;
  • M(Mantissa)为尾数(纯小数)
  • E(Exponent)为阶码(整数)
  • R(Radix)称为阶的基数(底),而且R为一常数(与尾数的基数相同)

在这里插入图片描述

  • R: 一般为2、8或16。在一台计算机中,所有数据的R 都是相同的,因此不需要在每个数据中表
    示出来。
  • 阶码: 常用补码或移码表示的定点整数
  • 尾数: 常用原码或补码表示的定点小数
  • RE: 就是让小数点移动

浮点数表示范围
设浮点数阶码的数值位取n位,尾数的数值位取m位,两者均用补码表示,M.表示尾数的符号位,当浮点数为非规格化数时,它在数轴上的表示范围如下图所示(注意:“上溢”、“下溢”(机器零) )。
在这里插入图片描述

[概念] 浮点数的规格化:
规定浮点数的尾数部分必须为纯小数,且当尾数的值不为0时,其绝对值应大于等于十进制数的0.5,称为浮点数的规化表示 (0.1***和1.0***的形式)
当浮点数的尾数不满足要求时,需要左移或右移尾数,同时对阶码进行修改,使之符合规格化的要求,这一过程称为规格化操作。
在规格化过程中,尾数每向左算术移位1次阶码减1.称为向左规格化.简称左规:尾数每向右移一位,则阶码加1,称为向右规格化,简称右规

什么情况下进行尾数的规格化?
左规: 当浮点数运算的结果为非规格化时要进行规格化处理,将尾数算数左移一位,阶码减1
右规: 当浮点数运算的结果尾数出现溢出 (双符号位为01或10),将尾数算数右移一位,阶码加1

IEEE 754

现代计算机中,浮点数一般采用IEEE754国际标准。标准中规定常用的浮点数有单精度和双精度两种形式
格式如下:

符号位阶码尾数总位数
单精度182332
双精度1115264

在这里插入图片描述

阶码用移码表示,真值都被加上一个偏移量,单精度采用的是移127的移码方案,双精度采用的是移1023的
移码方案。(为什么是127? )

在移127的移码方案中,8位移码结果不再与8位补码存在仅符号位相反的对应关系,其值要通过对阶码实际
值加127得到,或将标准移码的值再减1得到。

尾数采用原码表示,对规格化的非0值尾数使用隐藏位技术,即非零值的规格化浮点数的尾数最高位始终为
1,这一位不予存储,而认为隐含在小数点的左边,这是通过左移原来的尾数实现的,故可以使结果的表示
精度多一个二进制位,此时它所表示的实际值在1-2之间,若尾数是 M,则此时所表示的值是1.M(天然的规
格化)。

在这里插入图片描述

最小绝对值:尾数全为0,阶码真值最小-126,对应移码机器数0000 0001 此时整体的真值为(1.0) 2-126
最大绝对值:尾数全为1,阶码真值最大 127,对应移码机器数1111110
此时整体的真值为(1.111…11)X2127

只有1≤E≤254时,(-126-127) 真值= ( − 1 ) s ∗ 1. M ∗ 2 E − 127 (-1)^s*1.M*2^{E-127} (1)s1.M2E127
当阶码E全为0,(-127)尾数M不全为0时,表示非规格化小数 ( 0. x . . x ) x 2 − 126 (0.x..x)x2^{-126} (0.x..x)x2126
当阶码E全为0,(-127)尾数M全为0时,表示真值 0
当阶码E全为1,(-128)尾数M全为0时,表示无穷大
当阶码E全为1,(-128)尾数M不全为0时,表示非数值"NaN”(Not a Number)

浮点数加减法

浮点数的加减运算一般分为如下5个操作步骤

  1. 对阶
  2. 尾数加减
  3. 规格化
  4. 舍入
  5. 判溢出

例子
1.50408 ∗ 1 0 6 + 4.08150 ∗ 1 0 4 1.50408*10^6+4.08150*10^4 1.50408106+4.08150104

  1. 对阶 1.50408 ∗ 1 0 6 + 0.0408150 ∗ 1 0 6 1.50408*10^6+0.0408150*10^6 1.50408106+0.0408150106

  2. 尾数求和 1.50408 + 0.0408150 = 1.5448950 1.50408+0.0408150=1.5448950 1.50408+0.0408150=1.5448950

  3. 规格化 15.448950(右规) 0.015448950(左规)

  4. 舍入
    若规定只能有5位尾数,那么

    • 1.54489501.54489(直接舍弃低位)
    • 1.54489501.54490(舍弃部分大于0,低位 +1)
    • 1.54489501.54490(四舍五入)
  5. 判断溢出
    规定阶码不能超过10,那么如果出现 1.5448950 ∗ 1 0 10 1.5448950*10^{10} 1.54489501010就表示溢出
    (真正的溢出:在尾数为规格化数的时候,阶码确实大于最大值)
    (虚假的溢出: 尾数出现溢出,可以采用规格化进行调整)

例子
设X= 2 6 x 0.1010000 2^6 x0.1010000 26x0.1010000,Y= 2 7 x 0.1101000 2^7 x0.1101000 27x0.1101000,求X+Y
解 设阶码、尾数均采用补码表示形式,双符号位。阶码数值位4位,尾数数值位7位:

阶符阶码尾符尾数
x000110001010000
Y000111001101000

(1)求阶差.对大阶。
阶差 △ E = [ E X ] 补 + [ − E Y ] 补 = 000110 + 111001 = 111111 \triangle E=[EX]_补+[-EY]_补=000110+111001=111111 E=[EX]+[EY]=000110+111001=111111
X 阶码小,MX 算术右移1位,保留阶码 [ E ] 补 = [ E Y ] 补 = 000111 [E]_补=[EY]_补=000111 [E]=[EY]=000111
[ M x ] 补 = 00.01010000 [Mx]_补=00.01010000 [Mx]=00.01010000
(2)尾数相加。
[ M ] 补 = [ M X ] 补 + [ M Y ] 补 = 01.00100000 [M]_补=[MX]_补+[MY]_补=01.00100000 [M]=[MX]+[MY]=01.00100000
(3)规格化操作。双符号位不一致,因此右规,尾数右移一位,阶码加1
[ M ] 补 = 00.100100000 [M]_补=00.1001000 00 [M]=00.100100000
[ E ] 补 = 000111 + 000001 = 001000 [E]_补=000111+000001=001000 [E]=000111+000001=001000
(4)舍入。附加位的最高位为0,舍去, [ M ] 补 = 00.1001000 [M]_补=00.1001000 [M]=00.1001000
(5)判溢出。阶码的双符号位相同.故不溢出。

在浮点数加减运算的最后需要对阶码是否溢出进行判断,若未溢出,运算正常结束,若阶码下溢(比能表示的最小数还小时),则将结果置为机器零若阶码上溢,则置溢出标志。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

「MySQL运维常见问题及解决方法」

「MySQL运维常见问题及解决方法」 一、查看MySQL数据库安装路径1.1、方式一 --SHOW VARIABLES LIKE basedir;1.2、方式二 --ps -ef | grep mysql 二、MySQL设置连接数与最大并发数2.1、永久生效--修改my.cnf文件2.2、临时生效--通过命令设置的全局变量 三、其他相关参数设置四、…

0-1 knappack(0-1背包问题)

常见的算法有: 枚举贪心动态规划搜索分治和递归 0-1背包是个典型的动态规划算法。 啰嗦一句,动态规划属于运筹学,美国数学家bellman是运筹学的创建者。 0-1背包代码的逻辑如下: v a l ( i , p ) v a l ( i − 1 , p ) , p ≥…

帅爆了!SylixOS 可视化内核监控器即将发布

在翼辉即将发布的 RealEvo 6.0 中,将会加入 SylixOS 可视化内核监控器功能组件。可视化内核监控器实现了线程和进程状态跟踪、中断测量、内存使用率统计、IO 系统分析等功能,可用于复杂场景下应用程序、系统内核、BSP 以及驱动程序的图形化分析&#xff…

本地部署生成式AI,选显卡or笔记本电脑?!新款酷睿Ultra举票

来源 | 算力豹 200亿个大模型参数无压力,新一代酷睿Ultra凭什么? 12月14日报道,在大模型军备竞赛如火如荼的今天,真正让AI铺开惠民,那么移动端、PC将成为首选,AI PC或成标配。英特尔今日奉上AI硬件大招&am…

Polygon zkEVM ROM Spearbit审计报告解读(2023年8月calldata bug修复)

1. 引言 前序博客有: Polygon zkEVM Hexens审计报告解读Polygon zkEVM Spearbit审计报告解读(2022年12月版本)Polygon zkEVM Spearbit审计报告解读(2023年1月版本)Polygon zkEVM Spearbit审计报告解读(20…

一文初识Linux进程(超详细!)

🎬慕斯主页:修仙—别有洞天 ♈️今日夜电波:HEART BEAT—YOASOBI 2:20━━━━━━️💟──────── 5:35 🔄 ◀️ ⏸ ▶️ ☰ …

2024年最火爆的前端技术:虚拟DOM让页面性能飞升!

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 前言 正文 📘 一、什么是虚拟D…

红队攻防实战之DC2

吾愿效法古圣先贤,使成千上万的巧儿都能在21世纪的中华盛世里,丰衣足食,怡然自得 0x01 信息收集: 1.1 端口探测 使用nmap工具 可以发现开放了80端口,网页服务器但是可以看出做了域名解析,所以需要在本地完成本地域名…

LiveGBS流媒体平台GB/T28181功能-国标级联对接海康大华宇视华为等上级平台选择通道支持只看已选只看未选

LiveGBS功能国标级联对接海康大华宇视华为等上级平台选择通道支持只看已选只看未选 1、国标级联2、只看已选3、只看未选4、搭建GB28181视频直播平台 1、国标级联 LiveGBS可以作为下级平台,级联到第三方国标平台,详见: LiveGBS国标GB/T28181流…

Java智慧校园源码,SaaS云平台,私有云部署,移动端小程序使用小程序原生语言开发

系统概述: 电子班牌系统又称之为智慧班牌,是当前校园数字化信息化建设、文化建设的主流,是校园日常工作安排、校园信息发布、班级文化风采展示、课堂交流的重要应用载体。智慧班牌系统在传统信息发布和校园文化展示功能基础上,融…

白话机器学习的数学-2-分类

1、设置问题 图片分类:只根据尺寸把它分类为 纵向图像和横向图像。 如果只用一条线将图中白色的点和黑色的点分开: 这次分类的目的就是找到这条线。 2、内积 找到一条线,这是否意味着我们要像学习回归时那样,求出一次函数的斜率…

uni-app 前后端调用实例 基于Springboot 数据列表显示实现

锋哥原创的uni-app视频教程: 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni…

人工智能_机器学习085_DBSCAN算法介绍_具有噪声基于密度的聚类_基于密度的空间聚类方法---人工智能工作笔记0125

然后我们再来看一种聚类算法,叫做DBSCAN算法 可以看到,他和KMeans的原理完全不一样, 这个是基于密度的聚类方法,就是在一堆数据中,把密度最大的数据,归为一类 这里的划分为簇,其实就是 划分类别的意思 这个簇,就跟鱼群一样,一个鱼群中肯定是同一种鱼类. 然后我们再来看,DBSC…

LeetCode刷题--- 第 N 个泰波那契数

个人主页:元清加油_【C】,【C语言】,【数据结构与算法】-CSDN博客 个人专栏 力扣递归算法题 http://t.csdnimg.cn/yUl2I 【C】 ​​​​​​http://t.csdnimg.cn/6AbpV 数据结构与算法 ​​​http://t.csdnimg.cn/hKh2l 前言:这个专栏主要讲述动…

从马尔可夫奖励过程到马尔可夫决策到强化学习【01/2】

一、说明 关于马尔可夫过程,如何将马尔可夫决策转化成决策依据,这里介绍的基本的思想路径,为读者将来设计和应用决策模型提供理论上的参考。 这是了解强化学习的一系列基础文章的后续文章。如果您有兴趣了解强化学习,请查看此处。…

设计模式之工厂设计模式【创造者模式】

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…

苹果手机录音误删怎么恢复?记住这3个正确操作方法!

苹果语音备忘录被广泛应用于生活、工作和学习等各个方面。通过语音备忘录,我们可以记录重要的会议、对话、音乐或声音。 但如果不小心删除了这些珍贵的录音文件,该怎么办呢?苹果手机录音误删怎么恢复?本文将为你提供三个常用的解…

【计算机毕业设计】SSM汽车维修预约平台

项目介绍 本项目分为前后台,前台为普通用户登录,后台为管理员登录; 管理员角色: 管理员登录,新增管理员信息,查看管理员信息,查询管理员信息,查看用户信息列表,查询用户信息,新增新闻公告,查看新闻公告,查询新闻公告,新增配件类…

分布式系统架构设计之分布式数据存储的安全隐私和性能优化

五、安全性和隐私 在前面分布式系统部分,有对安全性做过介绍,如前面所述,在分布式系统中,确保系统的安全性和隐私是至关重要的。安全性关注系统的防护措施,而隐私是关注用户的个人信息保护。 安全性 身份认证&#…

【后端已完成,前端更新ing】uniapp+springboot实现个人备忘录系统【前后端分离】

目录 (1)项目可行性分析 (一)技术可行性: (二)经济可行性: (三)社会可行性: (2)需求描述 功能模块图 用例图&#…