2017-2018-1 20155338 《信息安全系统设计基础》 第三周学习总结
2017-2018-1 20155338 《信息安全系統(tǒng)設(shè)計基礎(chǔ)》第三周學(xué)習(xí)總結(jié)
教材學(xué)習(xí)內(nèi)容總結(jié)
一、三種重要的數(shù)字表示
(1)無符號數(shù)、有符號數(shù)、浮點數(shù)
無符號編碼是基于傳統(tǒng)的二進制表示法,表示大于或者等于零的數(shù)字。
浮點數(shù)編碼就是表示實數(shù)的科學(xué)計數(shù)法的以2為基數(shù)的版本。
有符號數(shù)即二進制補碼。
正數(shù)的原碼、反碼以及補碼是其本身。
負(fù)數(shù)的原碼是其本身,反碼是對原碼除符號位之外的各位取反,補碼則是反碼加1。
(2)為什么用補碼表示
能夠統(tǒng)一+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。
補碼的表示范圍比原碼和反碼表示的范圍都要大。用補碼能夠表示的范圍為-128~127,0~127分別用00000000~01111111來表示,而-127~-1則用10000001~11111111來表示,多出的10000000則用來表示-128。
一些需要了解的概念
(1)字
每個計算機都有一個字長,指明整數(shù)和指針數(shù)據(jù)的標(biāo)稱大小。因為虛擬地址是以這樣的一個字來編碼的,所以字長最重要的系統(tǒng)參數(shù)就是虛擬地址空間的最大大小。
對于一個字長為w位的機器而言,虛擬地址的范圍為0~2^w-1,程序最多訪問2^w字節(jié)。
(2)gcc -m32/64
當(dāng)沒有-m32或-m64參數(shù)時,一般情況下會生成跟操作系統(tǒng)位數(shù)一致的代碼
gcc -m32 可以在64位機上(比如實驗樓的環(huán)境)生成32位的代碼
(3)字節(jié)順序
字節(jié)順序是網(wǎng)絡(luò)編程的基礎(chǔ),是指占內(nèi)存多于一個字節(jié)類型的數(shù)據(jù)在內(nèi)存中的存放順序,通常有小端、大端兩種字節(jié)順序。
小端字節(jié)序指低字節(jié)數(shù)據(jù)存放在內(nèi)存低地址處,高字節(jié)數(shù)據(jù)存放在內(nèi)存高地址處。
大端字節(jié)序是高字節(jié)數(shù)據(jù)存放在低地址處,低字節(jié)數(shù)據(jù)存放在高地址處。
(4)布爾代數(shù)
邏輯運算:
結(jié)果是1或0
所有邏輯運算都可以用與、或、非表達(dá)(最大式、最小式)而與或非可以用“與非”或“或非”表達(dá),所以,只要一個與非門,就可以完成所有的邏輯運算。
數(shù)據(jù)類型轉(zhuǎn)換中的陷阱和可能會導(dǎo)致的漏洞
數(shù)據(jù)類型中的轉(zhuǎn)換轉(zhuǎn)換一個固定的長度,存儲的最大值是固定的,當(dāng)嘗試去存儲一個大于這個固定的最大值時,將會導(dǎo)致一個溢出。
溢出將會導(dǎo)致"不能確定的行為"。沒有辦法去用一個應(yīng)用程序來判斷先前計算的結(jié)果在實際上是否也是正確的,所以可能導(dǎo)致某些類型的bugs,緩沖區(qū)溢出等。
教材學(xué)習(xí)中的問題和解決過程
問題1:如何檢查補碼加減法中的溢出問題
問題1解決方案:
1、 兩個符號相同的補碼數(shù)相加,如果和的符號與加數(shù)的符號相反,或兩個符號相反的補碼數(shù)相減,差的符號與減數(shù)的符號相同,都屬于運算結(jié)果溢出.
2、兩個補碼數(shù)相加減時,若最高數(shù)值位向符號位送的進位值與符號位送向更高位的進位值不相同,也是運算結(jié)果溢出.
3、在采用雙符號位(如定點小數(shù)的模4補碼)運算時,若兩個符號位的得值不同(01或10)則是溢出.01表明兩個正數(shù)相加,結(jié)果大于機器所能表示的最大正數(shù),稱為"上溢";10表明兩個負(fù)數(shù)相加,結(jié)果小于機器所能表示的最小負(fù)數(shù),稱為"下溢"。
代碼托管
上周考試錯題總結(jié)
-無
結(jié)對及互評
本周結(jié)對學(xué)習(xí)情況
- [# 2017-2018-1 20155338 《信息安全系統(tǒng)設(shè)計基礎(chǔ)》第三周學(xué)習(xí)總結(jié)教材學(xué)習(xí)內(nèi)容總結(jié)
一、三種重要的數(shù)字表示
(1)無符號數(shù)、有符號數(shù)、浮點數(shù)
無符號編碼是基于傳統(tǒng)的二進制表示法,表示大于或者等于零的數(shù)字。
浮點數(shù)編碼就是表示實數(shù)的科學(xué)計數(shù)法的以2為基數(shù)的版本。
有符號數(shù)即二進制補碼。
正數(shù)的原碼、反碼以及補碼是其本身。
負(fù)數(shù)的原碼是其本身,反碼是對原碼除符號位之外的各位取反,補碼則是反碼加1。
(2)為什么用補碼表示
能夠統(tǒng)一+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。
補碼的表示范圍比原碼和反碼表示的范圍都要大。用補碼能夠表示的范圍為-128~127,0~127分別用00000000~01111111來表示,而-127~-1則用10000001~11111111來表示,多出的10000000則用來表示-128。
一些需要了解的概念
(1)字
每個計算機都有一個字長,指明整數(shù)和指針數(shù)據(jù)的標(biāo)稱大小。因為虛擬地址是以這樣的一個字來編碼的,所以字長最重要的系統(tǒng)參數(shù)就是虛擬地址空間的最大大小。
對于一個字長為w位的機器而言,虛擬地址的范圍為0~2^w-1,程序最多訪問2^w字節(jié)。
(2)gcc -m32/64
當(dāng)沒有-m32或-m64參數(shù)時,一般情況下會生成跟操作系統(tǒng)位數(shù)一致的代碼
gcc -m32 可以在64位機上(比如實驗樓的環(huán)境)生成32位的代碼
(3)字節(jié)順序
字節(jié)順序是網(wǎng)絡(luò)編程的基礎(chǔ),是指占內(nèi)存多于一個字節(jié)類型的數(shù)據(jù)在內(nèi)存中的存放順序,通常有小端、大端兩種字節(jié)順序。
小端字節(jié)序指低字節(jié)數(shù)據(jù)存放在內(nèi)存低地址處,高字節(jié)數(shù)據(jù)存放在內(nèi)存高地址處。
大端字節(jié)序是高字節(jié)數(shù)據(jù)存放在低地址處,低字節(jié)數(shù)據(jù)存放在高地址處。
(4)布爾代數(shù)
邏輯運算:
結(jié)果是1或0
所有邏輯運算都可以用與、或、非表達(dá)(最大式、最小式)而與或非可以用“與非”或“或非”表達(dá),所以,只要一個與非門,就可以完成所有的邏輯運算。
數(shù)據(jù)類型轉(zhuǎn)換中的陷阱和可能會導(dǎo)致的漏洞
數(shù)據(jù)類型中的轉(zhuǎn)換轉(zhuǎn)換一個固定的長度,存儲的最大值是固定的,當(dāng)嘗試去存儲一個大于這個固定的最大值時,將會導(dǎo)致一個溢出。
溢出將會導(dǎo)致"不能確定的行為"。沒有辦法去用一個應(yīng)用程序來判斷先前計算的結(jié)果在實際上是否也是正確的,所以可能導(dǎo)致某些類型的bugs,緩沖區(qū)溢出等。
教材學(xué)習(xí)中的問題和解決過程
問題1:如何檢查補碼加減法中的溢出問題
問題1解決方案:
1、 兩個符號相同的補碼數(shù)相加,如果和的符號與加數(shù)的符號相反,或兩個符號相反的補碼數(shù)相減,差的符號與減數(shù)的符號相同,都屬于運算結(jié)果溢出.
2、兩個補碼數(shù)相加減時,若最高數(shù)值位向符號位送的進位值與符號位送向更高位的進位值不相同,也是運算結(jié)果溢出.
3、在采用雙符號位(如定點小數(shù)的模4補碼)運算時,若兩個符號位的得值不同(01或10)則是溢出.01表明兩個正數(shù)相加,結(jié)果大于機器所能表示的最大正數(shù),稱為"上溢";10表明兩個負(fù)數(shù)相加,結(jié)果小于機器所能表示的最小負(fù)數(shù),稱為"下溢"。
代碼托管
上周考試錯題總結(jié)
-無
結(jié)對及互評
本周結(jié)對學(xué)習(xí)情況
20155307
結(jié)對學(xué)習(xí)內(nèi)容
- 三種重要的數(shù)字表示 - 布爾代數(shù)學(xué)習(xí)進度條
| 目標(biāo) | 2000行 | 15篇 | 200小時 | |
| 第一周 | 150/150 | 1/1 | 17/17 | |
| 第二周 | 70/220 | 1/2 | 12/29 | |
| 第三周 | 100/320 | 1/3 | 10/39 |
計劃學(xué)習(xí)時間:15小時
實際學(xué)習(xí)時間:10小時
]()
- 結(jié)對學(xué)習(xí)內(nèi)容
- 三種重要的數(shù)字表示
- 布爾代數(shù)
- ...
學(xué)習(xí)進度條
| 目標(biāo) | 2000行 | 15篇 | 200小時 | |
| 第一周 | 150/150 | 1/1 | 17/17 | |
| 第二周 | 70/220 | 1/2 | 12/29 | |
| 第三周 | 100/320 | 1/3 | 10/39 |
計劃學(xué)習(xí)時間:15小時
實際學(xué)習(xí)時間:10小時
轉(zhuǎn)載于:https://www.cnblogs.com/Hdywan/p/7674370.html
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的2017-2018-1 20155338 《信息安全系统设计基础》 第三周学习总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CriminalIntent项目开发--
- 下一篇: C语言第一次博客作业——输入输出格式