20135219洪韶武——資訊安全系統設計基礎第三周學習總結

來源:互聯網
上載者:User

標籤:

學習過程總結

一、gcc 編譯

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

二、重點注意知識點

  p20: 三種數字:無符號數、有符號數(2進位補碼)、浮點數,資訊安全系同學從逆向角度考慮為什麼會產生漏洞

  p22: 進位轉換,注意拿二進位作中間結果就好轉了

  p25: gcc -m32 可以在64位機上(比如實驗樓的環境)產生32位的代碼

  p26: 位元組順序是網路編程的基礎,記住小端是“高對高、低對低”,大端與之相反就可以了。

  p28: 代碼執行一下

  p32: 能區分邏輯運算(結果是1或0)和位元運算(結果是位向量),所有邏輯運算都可以用與、或、非表達(最大式、最小式),而與或非可以用“與非”或“或非”表達,所以,只要一個與非門,就可以完成所有的邏輯運算。

  p33: 掩碼是位元運算的重要應用,對特定位可以置一,可以清零

  p38: 要用C99中的“long long”類型,編譯是要用 gcc -std=c99

  p39: 補碼的利用寄存器的長度是固定的特性簡化數學運算。想想鐘錶,12-1 等價於 12 + 11,利用補碼可以把數學運算統一成加法,只要一個加法器就可以實現所有的數學運算。

  p44: 注意C語言中有符號數和無符號數的轉換規則,位向量不變。想想第一章說的 資訊就是“位+上下文”

  p48: 怎麼樣讓負數等於正數? 資訊安全的逆向思維

p49: 0擴充和符號擴充

p52: 深入思考一下代碼和結果

  p54: 如何讓整數運算溢出?如何避免? p62例子看看

  p67: 關於整數運算的最後思考

  p67: 浮點數有科學計數法的基礎就不難理解,IEEE標準754

  p68: 浮點數運算的不精確性與舍入

  p70: IEEE浮點標準,float/double類型

  p74: 整數與浮點數表示同一個數位關係

  p78: 整數與浮點數轉換規則

  p80:家庭作業可以選做,協調好每題最多兩人一組做,一星題目一人加一分,二星加二分,三星加三分,四星加四分

三、重點練習

  p24 進位轉碼

  p24 show_bytes,寫個main函數測試一下,參考p30代碼
  p35 練習2.11, 可以用GDB單步跟蹤一下,理解更深刻
  p44 代碼放到一個main函數中,可以用GDB單步跟蹤一下,理解更深刻
  p47/p49代碼放到一個main函數中,可以用GDB單步跟蹤一下,理解更深刻
  p78,轉換規則可以寫幾行代碼測試一下。

未完成,回去繼續做。。。

20135219洪韶武——資訊安全系統設計基礎第三周學習總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.