當前位置:
首頁 >
2018-2019-1 20165330 《信息安全系统设计基础》第二周学习总结
發布時間:2024/9/21
32
豆豆
生活随笔
收集整理的這篇文章主要介紹了
2018-2019-1 20165330 《信息安全系统设计基础》第二周学习总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
學習內容總結
信息的表示與處理
- 十進制:D=dndn-1...d1d0.d-1...d-m(m,n為正整數)
- 二進制:B=bnbn-1...b1b0.b-1...b-m(m,n為正整數)
- 八進制:O=onon-1...o1o0.o-1...0-m(m,n為正整數)
- 十六進制:H=hnhn-1...h1h0.h-1...h-m(m,n為正整數),在C語言中以0x或0X開頭的數字常量為十六進制的值
- 進制轉換:
- 十進制轉換R進制:整數部分除以R,商為權值,直至商為0并以下至上排列;小數部分不斷乘R記錄結果的整數部分并以上至下排列
- 二進制轉換八進制:每三位為一個八進制,不足在最高位補0
- 二進制轉換十六進制:每四位為一個十六進制,不足在最高位補0
- 位向量:固定長度為w、由0和1組成的串,絕大多數可表示一個數
- 位級運算包括:
- “|”或運算:兩個0時為0
- “&”與運算:有0即為0
- “~”非運算:即取反
- “^”異或運算:兩個相同數為0
- 在邏輯運算中,只有0、1兩種表示,非零參數都表示TRUE,0表示FALSE
- 邏輯運算包括:
- “&&”:與1與為true,與0與為false
- “||”:有操作數為true則為true
- “!”:取反
- 左移x<<k:左移k位,最右邊補k個0
- 算術右移x>>k:右移k位并在最左端補k個最高有效位上的值
- 邏輯右移x>>>k:右移k位,最左邊補k個0
- 對有符號數采用算術右移,對無符號數采用邏輯右移
整數表示
- 二進制小數
- IEEE浮點表示
- 表示:
math V=(-1)^sM2^E - 符號s決定著這個數是負數(s=1)還是正數(s=0)
- 尾數 M是一個二進制小數,n位小數字段f=fn-1…f1f0編碼尾數M
- 階碼 E的作用是對浮點數加權,這個權重是2^E,e=ek-1…e1e0
- 偏移常數
math Bias = {2^k}{^-}{^1}-1 - 32位浮點數:
- 規格化的值
- E=e-Bias M=1+f
- 非規格化的值
- E=1-Bias M=f
- 表示:
數值運算
- 加法
- 當發生溢出情況時,丟棄所溢出的最高位,所得到的結果是x + y (mod 2^w)
- 公式
- 乘法
- 公式:
- 在大多數機器上,整數乘法指令相當慢,常采用用移位和加法運算的組合來代替乘法運算
- 除法:向下取整
- x/2 實際上是x的位向量向右移1位
- x/16 是x向右移4位
- 加法
- 乘法
- 除法:算術右移
信息的存儲
- 網絡上的數據流是字節流,收到的第一個字節被當作高位看待
- 網絡字節序是大端字節序
- htons()把unsigned short類型從主機序轉換到網絡序
- htonl() 把unsigned long類型從主機序轉換到網絡序
- ntohs() 把unsigned short類型從網絡序轉換到主機序
ntohl() 把unsigned long類型從網絡序轉換到主機序
其中 網絡net即n 主機host即h long(32位)即l short(16位)即s
課下作業
完成教材 p97 2.96 2.97,要有完備的測試
2.96
- 遵循位級浮點編碼規則,實現具有如下原型的函數:
- 對于浮點數f,這個函數計算(int)f。如果f是NaN,你的函數應該向零舍人。如果f不能用整數表示(例如,超出表示范圍,或者它是一個NaN),那么函數應該返回0x800000000。
- 測試你的函數,對參數f可以取的所有2^32個值求值,將結果與你使用機器的浮點運算得到的結果相比較。
- NaN: not a number,表示“無效數字”。
- 首先,看是否是浮點數且不超范圍,超過表示范圍,置為最大整數,若太小,不能化為整數,置為0。其次看符號 設置+,-號。如果是NaN,置為0x80000000
- 函數形參為無符號型,輸入負數時和整數轉化不同,加了一行代碼打印當前輸入,負數時,將無符號轉化為浮點型解決
2.97
- 遵循位級浮點編碼規則,實現具有如下原型的函數:
- 對于函數i,這個函數計算(float) i的位級表示。
- 測試你的函數,對參數f可以取的所有2^32個值求值,將結果與你使用機器的浮點運算得到的結果相比較。
轉載于:https://www.cnblogs.com/besty-zyx/p/9733297.html
總結
以上是生活随笔為你收集整理的2018-2019-1 20165330 《信息安全系统设计基础》第二周学习总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 相邻兄弟选择器(+)、子选择器()、兄弟
- 下一篇: mac os mojave也没有增加简体