zoukankan      html  css  js  c++  java
  • 20145228 《信息安全系统设计基础》第三周学习总结

    教材学习内容总结

    有符号整数、无符号整数、浮点数的表示

    1.整型数据类型

    32位机器和64位机器对于同一数据类型的典型取值范围是有所不同的 。 64位机器用8个字节表示;32位机器用4个字节表示

    典型取值范围中,取值范围不对称——负数的范围比整数的范围大1

    2.无符号数的编码

    0-(2^w)-1中的每一个整数和长度为w的位向量是一一对应的

    3.补码编码(有符号数的编码)

    正数的补码=原码

    负数的补码=原码各位取反再加1

    负数的补码=原码各位取反再加1

    大多数情况下用补码来表示有符号数,并且具有的是典型的取值范围

    有符号数的其他表示方法:原码、反码

    4.有符号数和无符号数的转换

    转换原则:底层的位保持不变

    无————>有:U2Tw函数(*w表示数据类型的位数)

    以2的w-1次方为界限:小于它——保持不变;大于它——转换为负数值

    有————>无:T2Uw函数

    非负数——保持不变;负数——转换成大正数

    补码的重要性

    •能够统一+0和-0的表示

    •采用原码表示,+0的二进制表示形式为0 000 0000,而-0的二进制表示形式为1 000 0000;

    •采用反码表示,+0的二进制表示形式为0 000 0000,而-0的二进制表示形式为1 111 1111;

    •采用补码表示,+0的二进制表示形式为0 000 0000,而-0的二进制表示形式为1 111 1111+1=1 0000 0000,因为计算机会进行截断,只取低8位,所以-0的补码表示形式为0000 0000。

    •补码的表示范围比原码和反码表示的范围都要大。用补码能够表示的范围为-128127,0127分别用0000000001111111来表示,而-127-1则用10000001~11111111来表示,多出的10000000则用来表示-128。

    •对于有符号整数的运算能够把符号位同数值位为一起处理

    学习中的问题和解决过程

    掩码是位运算的重要应用,对特定位可以置一,可以清零

    补码的利用寄存器的长度是固定的特性简化数学运算。比如钟表,12-1 等价于 12 + 11,利用补码可以把数学运算统一成加法,只要一个加法器就可以实现所有的数学运算。

    对“信息=位+上下文”的理解

    数值可能改变,但是位模式不变

    无符号二进制数 "1001" 是9, 转化为有符号数还是“1001”,但最高位变成-7

    本周代码托管

    感悟

    这周开始了较多的代码编译,只是按照书上的代码敲了几次,但对代码的具体内容还不是很清楚,只知道大概。我认为刚开始还是多敲代码,才能熟练运用。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 4000行 25篇 350小时
    第一周 0/ 0 2/2 20/30
    第二周 100/100 1/3 20/50
    第三周 300/400 1/4 20/70

    参考资料

  • 相关阅读:
    Linux软件安装
    虚拟地址和物理地址
    python 读写txt文件
    python 浮点数保留几位小数
    Contiki源码结构
    Contiki Rtimer 模块
    Contiki Ctimer模块
    Contiki Etimer 模块
    Contiki Timer & Stimer 模块
    Contiki clock模块
  • 原文地址:https://www.cnblogs.com/J000/p/5922138.html
Copyright © 2011-2022 走看看