2017-2018-1 20155226《信息安全系統設計基礎》第14周學習總結

2017-2018-1 20155226《信息安全系統設計基礎》第14周學習總結

教材學習內容深度學習

第二章 信息的表示和處理
  • 十六進制表示法C表示法以0x或0X開頭的數字常量爲十六進制進制轉換經常使用進制:二進制(B),十進制(D),八進制(O或者Q),十六進制(H)html

  • 轉換爲二進制-十六進制相互轉換,二進制的四位數字對應十六進制的一位數字。 同理,二進制與八進制的轉化是三位對應一位。 可是一般狀況下,進制轉換都以二進制爲橋樑進行轉換。java

  • 每臺計算機都有一個字長,指明整數和指針數據的標稱大小,由於虛擬地址是以這樣的一個字來編碼的,因此字長決定的最重要的系統參數就是虛擬地址空間的最大大小。git

  • 對於一個字長爲w位的機器來講,虛擬地址的範圍是0~2^w-1。程序最多訪問2的w次方個字節。數組

  • 數據大小: 在不一樣字長的計算機中,相同的數據類型所佔用的字節數並不相同,32位和64位的區別見書安全

  • 使用C99特性時 gcc -std=c99 xxx.c 實驗樓環境爲64位,編譯爲32位機器碼: gcc -m32 xxx.c學習

  • 尋址和字節順序以0x01234567舉列來講:
  1. 大端法: 最高有效位在前因此是: 01 23 45 67
  2. 小端法: 最低有效位在前因此是: 67 45 23 01
  • 強制類型轉換用來容許一種數據類型引用一個對象,而這種數據類型與建立這個對象的定義的數據類型不一樣。最好在定義的時候保持數據形式的統一測試

  • 表示字符串和代碼: C語言中字符串被編碼爲一個null字符結尾的字符數組。每一個字符串都由某個標準編碼來表示,最多見的是ASCII字符碼。編碼

位運算

  1. 布爾代數 經常使用運算符號:與: &或: |非: ~異或:^設計

  2. 位向量位向量:有固定長度爲w、由0和1組成的串。位向量的應用表示有限集合。指針

  3. 位級運算位運算:位向量按位進行邏輯運算,結果還是位向量。位級運算的一個常見用法就是實現掩碼運算,這裏掩碼是一個位模式,表示從一個字中選出的爲的集合。
  4. C語言中的移位運算: C語言標準並無明肯定義應該使用那種兩類型的右移。對於無符號數據,右移必須是邏輯的。而對於有符號數據,算術的或者邏輯的右移均可以。

c語言中的移位運算右移

  • 右移分爲邏輯右移和算術右移。算術左移和邏輯左移沒有什麼區別。

    邏輯右移: 在左端補k個0,多用於無符號數移位運算
    算術右移: 在左端補k個最高有效位的值,多用於有符號數移位運算。

優先級移位運算的優先級比算術運算(好比+、-)要低整數表示1、整型數據類型

  • 整型數據類型——表示有限範圍的整數,每種類型都能用關鍵字來指定大小,還能夠指定是非負數仍是負數。這些不一樣大小的分配的字數會根據機器的字長和編譯器有所不一樣

無符號數的編碼

  • 無符號數的二進制表示有一個很重要的屬性,就是每一個介於0~2的w次方-1之間的數都有惟一一個w位的值編碼。

    C語言支持全部的整型數據類型的有符號和無符號運算

  • 1、無符號運算
    無符號運算本質上就是模運算
  1. 加法 涉及到的相關知識有:阿貝爾羣,單位元,加法逆元等等。計算起來很簡單。
  2. 乘法 兩個w位的無符號數相乘,其實是截取了低w位,可是等價於mod 2的w次冪。

補碼運算

  1. 補碼用法 加法必須肯定結果太大或者過小時,應該採起什麼措施 兩個數的w位補碼之和與無符號數之和有徹底相同的位級表示。大部分計算機使用一樣的機器指令來執行無符號或者有符號加法。

    教材及課堂學習和總結

  • 問題和解決方法已在測試中列出

課後練習

代碼託管

嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看能不能改進本身的計劃能力。這個工做學習中很重要,也頗有用。
耗時估計的公式
:Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。

參考:軟件工程軟件的估計爲何這麼難軟件工程 估計方法

  • 計劃學習時間:25小時

  • 實際學習時間:20小時

(有空多看看現代軟件工程 課件
軟件工程師能力自我評價表
)

參考資料

相關文章
相關標籤/搜索