摘要:寫在前面博客主頁的江湖背景的江湖背景歡迎關注點贊收藏留言本文由原創,首發首發時間年月日最新更新時間年月日堅持和努力一定能換來詩與遠方向未見花聞學習參考書籍深入理解計算機系統作者水平很有限,如果發現錯誤,請留言轟炸哦萬分感謝感謝感謝
?寫在前面
- ?博客主頁:kikoking的江湖背景
- ?歡迎關注?點贊?收藏??留言?
- ?本文由 kikokingzz 原創,CSDN首發!
- ?首發時間:?2021年11月16日?
- ?最新更新時間:?2021年11月16日?
- ??堅持和努力一定能換來詩與遠方!(向未見花聞學習)
- ?參考書籍:?《深入理解計算機系統》
- ?作者水平很有限,如果發現錯誤,請留言轟炸哦!萬分感謝感謝感謝!
???我是分割線???
2.1信息存儲
·大多數計算機采用8bit的字節作為最小的可尋址的內存單位,而不是bit。
所以我們常說的32為機器,其地址為32位,但一個地址序列只存儲1字節,注意單位是字節
1.虛擬內存
·機器級程序將內存視為一個非常大的字節數組,所有可能地址的集合就稱為虛擬地址空間
2.機器級層面 程序就是字節序列
·C編譯器維護數據類型的信息,但是其生成的機器級程序并不包含關于數據類型的信息;每個程序對象被視為一個字節塊,程序就變為一個字節序列
???我是分割線???
?2.1.1·采用十六進制數表示位模式
·因為二進制表示法太冗長
·十進制表示法與位模式的互相轉化很麻煩
?·掌握:進制轉換
???我是分割線???
?2.1.2·字數據的大小
1.每臺計算機都有一個字長(32位機器/64位機器),指明指針數據的標稱大小
2.32位字長的內存(虛擬地址空間)為4GB
??? ?由此計算可得32位字長的機器內存位4GB
?3.數據類型的大小
???我是分割線???
?2.1.3尋址和字節順序
1.多字節對象的地址為所使用字節(內存單元序號)中字節最小的地址
?2.字節順序
·大端法:最高有效字節在最前面的方式
·小端法:最低有效字節在最前面的方式
?·雙端法:可以配置作為大端或者小端的機器運行
?2.1.4表示字符串
1.C語言中字符串被編碼為一個以null(其值為0)字符結尾的字符數組
2.每個字符都由某個標準編碼來表示,最常見的就是ASCII碼
3.文本數據比二進制數據具有更強的平臺獨立性
·因為在使用ASCII作為字符碼的任何系統上都將得到相同的結果,與字節順序和字節大小無關(即無關大小端機器,輸出結果相同)
?2.1.5表示代碼
·即使是完全一樣的進程,運行在不同的操作系統上也會有不同的編碼規則;即二進制代碼是不兼容的,很少能在不同機器和操作系統間進行移植。
·機器級角度看來,程序只是字節序列,是不知道關于原始源程序的任何信息的
?2.1.6布爾代數
·布爾通過將邏輯值 TRUE 和 FALSE 編碼為二進制值1和0,設計出布爾代數
·掌握:計算
?2.1.7C語言中的位級運算
·C語言支持按位布爾運算
·例題1:如何不應用外部變量來交換向x、y的值
?·例題2 掩碼運算
舉例:掩碼0xFF(最低的8位為1)表示一個字的低位字節
·位級運算 x&0xFF 生成一個由x最低有效字節組成的值,而其他字節被置為0
·x=0x89ABCDEF? ? ?;? ?x&0xFF=0x000000EF
我們應當熟練掌握位級運算,在編程時可以大大提高代碼的效率
?2.1.8C語言中的邏輯運算?
·C語言中還提供來一組邏輯運算符||、&&、! 分別對應于命題邏輯中的OR、AND、NOT運算
·邏輯運算認為所有的非零參數都表示TRUE,而參數0表示FALSE
·它們返回1或者0,分別表示TRUE和FALSE
·短路特性
·如果對第一個參數求值就能確定表達式對結果,那么邏輯運算符就不會對第二個參數求值
·超級好的例題?
?2.1.9C語言中的移位運算?
·左移
·(我覺得這段CSAPP講的沒有很難懂,就直接拷貝了)
?·右移
·邏輯右移:補0(無符號數必須邏輯右移)
·算術右移:補最高位(基本上對有符號數使用算術右移)
·很好的例子
?
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/123729.html
摘要:哪吒社區技能樹打卡打卡貼函數式接口簡介領域優質創作者哪吒公眾號作者架構師奮斗者掃描主頁左側二維碼,加入群聊,一起學習一起進步歡迎點贊收藏留言前情提要無意間聽到領導們的談話,現在公司的現狀是碼農太多,但能獨立帶隊的人太少,簡而言之,不缺干 ? 哪吒社區Java技能樹打卡?【打卡貼 day2...
摘要:從社區和過往的經驗而言異步編程的難題已經基本解決無論是通過事件還是通過模式或者流程控制庫。本章主要介紹了主流的幾種異步編程解決方案這是目前中主要使用的方案。最后因為人們總是習慣性地以線性的方式進行思考以致異步編程相對較為難以掌握。 前言 如果你想要深入學習Node,那你不能錯過《深入淺出Node.js》這本書,它從不同的視角介紹了 Node 內在的特點和結構。由首章Node 介紹為索引...
摘要:使用簽署免費證書后端掘金本文操作在操作系統下完成,需要和超文本傳輸安全協議英語,縮寫,常稱為,紅黑樹深入剖析及實現后端掘金紅黑樹是平衡二叉查找樹的一種。 使用 Lets Encrypt 簽署免費 Https 證書 - 后端 - 掘金 本文操作在Linux操作系統下完成,需要Python和Nginx 超文本傳輸安全協議(英語:Hypertext Transfer Protocol Sec...
閱讀 1702·2021-11-18 10:02
閱讀 2218·2021-11-15 11:38
閱讀 2666·2019-08-30 15:52
閱讀 2190·2019-08-29 14:04
閱讀 3230·2019-08-29 12:29
閱讀 2086·2019-08-26 11:44
閱讀 994·2019-08-26 10:28
閱讀 830·2019-08-23 18:37