一、
1、當構造儲存和處理資訊的機器時,二進位制值工作得更好。二值訊號能夠容易地被表示、儲存和傳輸。
2、位組:編碼非負數
標準字元碼:文件中字母和符號編碼
3、無符號編碼:傳統的二進位制,表示大於零或者等於零的數字
補碼編碼:有符號整數,可以為正也可以為負
浮點數:表示實數的科學計數法的以2未基數的版本
二、1、大多數計算機使用8位的塊,或者位元組,作為最小的可定址的記憶體空間
2、機器級程式將記憶體視為乙個非常大的位元組陣列,稱為虛擬記憶體
3、記憶體的每個位元組都由乙個唯一的數字來標識,稱它為位址
4、所有可能位址的集合稱為虛擬位址空間
這個虛擬位址空間只是乙個展現給機器級的概念性映像,實際的實現是將動態隨機訪問儲存器、快閃儲存器、磁碟儲存器、特殊硬體和作業系統軟體結合而成的,為程式提供乙個看上去統一的位元組陣列。
5、接下來幾章,講述編譯器和執行時系統如何將儲存器空間劃分成更可管理的單元,來存放不同的程式物件,即程式資料、指令和控制資訊。可以用各種機制來分配和管理程式不同部分的儲存。這種管理完全是在虛擬位址空間裡完成的。
6、每個程式物件可以簡單地視為乙個位元組塊,而程式本身就是乙個位元組序列。
值和型別
值:某個物件的位置
型別:表示那個位置上所儲存物件的型別。
三、十六進製制表示法
四、字資料大小
1、每台計算機都有乙個字長,指明指標資料的標稱大小。因為虛擬位址是以這樣的乙個字來編碼的,所以字長決定的最重要的系統引數就是虛擬位址空間, 對於乙個字長為w位的機器而言,虛擬位址空間的範圍為0—2w-1.
五、定址和位元組順序
2、在幾乎所有機器上,多位元組物件都被儲存為連續的位元組序列,物件的位址為所使用位元組中的最小位址。
3、小端法 大端法
最低有效位元組在最前面的方式,稱為小端法
最高有效位元組在最前面的方式,稱為大端法。
4、不過有時候,位元組順序會稱為問題
情況一、小端法機器產生的資料被傳送到大端法機器
情況二、當閱讀表示整數資料的位元組序列時位元組順序
5、反彙編器:一種確定可執行程式檔案所表示的指令序列的工具
五、表示字串
六、表示**
1、不同機器型別使用不同的且不相容的指令和編碼方式
2、從機器角度看,程式僅僅是位元組序列。
七、布林代數
八、c語言中位級運算
九、c語言中邏輯運算
十、c語言中移位運算
1、左移:x向左移動k位,丟棄最高的k位,並在右端補k個0.
右移分兩種:
2、邏輯右移:不考慮符號位,左邊補0
3、算術右移:考慮符號位,符號位為1,則補1.
CSAPP筆記 第二章資訊的表示和處理
python 中十六進製制的轉變方法 a 15 print hex a print 0xf 大端法 ibm 和sun microsystems printf 2x 解析 摘自k r c程式語言 點號,用語分隔字段寬度和精度 表示精度的數。對於字串,它指定列印的字元的最大個數 對於e e或f轉換,它指...
第二章資訊的處理和表示 2 整數表示
用位來表示整數有兩種不同的方式 1.表示非負數 2.表示負數 零 正數 引入一些數學術語 整型資料型別 c語言支援多種整型資料型別 表示有限範圍的數。每種型別都能用關鍵字來指定其大小,這些關鍵字 包括char short long,同時還可以指示被表示的數字是非負數 宣告為unsigned 或者可能...
CSAPP學習筆記 第二章 資訊的表示和處理
閱讀本章建議 1.反覆閱讀原理描述和它的示例與討論,直到你對該屬性的說明內容及其重要性有了牢固的直覺 2.第一次閱讀可跳過 對於更加複雜的屬性,還會提供推導,其結構看上去將會像乙個數學證明 3.完成練習題 2.1 資訊儲存 1 byte 8 bits 十六進製制表示法 不同進製之間的轉換 字長 指標...