日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

那些让你起飞的计算机基础知识

發(fā)布時間:2025/3/21 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 那些让你起飞的计算机基础知识 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

有網(wǎng)友問道:“欣哥,你的知識框架中最基礎(chǔ)的點是哪些?或者哪方面是比較重要的?” ?

我看到這個問題一下子愣了,是啊,很多人都深有體會,都覺得基礎(chǔ)知識重要,但是具體來說,哪些點重要呢??

今天我就試圖總結(jié)一下,也歡迎大家補充。

信息的表示和處理


計算機如何表示整數(shù):有符號數(shù)和無符號數(shù),尤其是如何用補碼表示負(fù)數(shù),數(shù)字的取值范圍。?

計算機如何表示浮點數(shù),為什么小數(shù)的二進制表示法只能近似表示十進制小數(shù)。?

數(shù)值的轉(zhuǎn)換、移位?

這幾點非常重要,因為幾乎所有的編程語言都有數(shù)據(jù)類型,而最基本數(shù)據(jù)類型必然包括整數(shù)和浮點數(shù)。?

搞不清這些表示和運算,在編程中就會遇到一些稀奇古怪的問題。?

?

從匯編層面理解程序的執(zhí)行


順序、分支、循環(huán)、函數(shù)調(diào)用、數(shù)組、結(jié)構(gòu)體等在匯編層面是怎么實現(xiàn)的,寄存器和內(nèi)存是怎么使用的。?

理解了這些其實也就理解了馮諾依曼計算機體系結(jié)構(gòu),這是計算機學(xué)科一個基礎(chǔ)性的東西。 ?

知道程序在底層是怎么運轉(zhuǎn)的, 對于學(xué)習(xí)各種虛擬機有很大的幫助,比如JVM,它要解析執(zhí)行的是字節(jié)碼,字節(jié)碼本質(zhì)上要表達(dá)的就是這些東西,只不過有所擴展。?

理解了棧幀,就能理解函數(shù)調(diào)用的本質(zhì),遞歸,以及尾遞歸的實現(xiàn)。還有安全相關(guān)的概念,如緩沖區(qū)溢出這個臭名卓著的漏洞及其防范辦法。 ?

?

進程和線程


程序員必備的知識,不了解這個,簡直是無法編程。?

需要掌握進程的地址空間,代碼在哪里,堆在哪里,棧在哪里。?

要準(zhǔn)確理解進程和線程之間的關(guān)系,為什么說進程是擁有資源的基本單位, 線程是CPU調(diào)度的基本單位??

進程切換和線程切換之間的區(qū)別和聯(lián)系。?

他們是如何創(chuàng)建,執(zhí)行,有哪些狀態(tài),狀態(tài)之間的轉(zhuǎn)換。 由此會涉及到并發(fā)和并行,線程之間的競爭和合作。?

鎖的本質(zhì)(硬件層面),樂觀鎖,悲觀鎖,死鎖等問題。?

線程的實現(xiàn)方式,用戶級線程和內(nèi)核級線程的對應(yīng)方式。 ?

在編程的過程中,有些知識點會直接使用,如多線程編程,鎖。 還有一些概念能用到很多地方,例如CAS,不僅僅是編程語言的概念,還能在更新數(shù)據(jù)庫時使用。再比如你理解了線程的實現(xiàn)方式,迅速就能掌握go語言中并發(fā)的手段:goroutine。?

?

存儲器的層次結(jié)構(gòu)


Tomcat用了多線程執(zhí)行請求,Redis用了單線程來處理請求,Node.js也用了單線程來,這是為什么? ?秘密都在存儲器的層次結(jié)構(gòu)。?

人類制造的計算機設(shè)備之間有著巨大的速度差異: ?

總之,CPU超級快,內(nèi)存比較快,硬盤非常慢,網(wǎng)絡(luò)更慢, 這個速度差異是IT行業(yè)的一個核心問題,人類想了很多辦法試圖去彌補這個差異:多線程,緩存,異步,多路復(fù)用,硬件層面的DMA。?

記著下面這張圖,每當(dāng)你遇到某個軟件的特性的時候,想一想和它有什么關(guān)系:?

?

數(shù)據(jù)結(jié)構(gòu)和算法


它的重要性我羅嗦過很多次了,不用再重復(fù)了, 我就舉個最簡單的例子: 理解了B+ Tree才能理解MySQL的InnoDB的索引,理解了索引才能更好地優(yōu)化查詢,對吧? ?

?

計算機網(wǎng)絡(luò)


現(xiàn)在的程序基本上都是網(wǎng)絡(luò)程序, 所以這也是一個必備的基礎(chǔ)知識,學(xué)習(xí)計算機網(wǎng)絡(luò)的一大好處就是和工作直接相關(guān),能直接使用,比較有動力。?

HTTP協(xié)議肯定跑不掉,TCP,UDP也得會,尤其是TCP可靠傳輸?shù)脑?#xff1a;如何在一個不可靠的網(wǎng)絡(luò)中進行可靠的傳輸, 這是無數(shù)前輩總結(jié)的經(jīng)驗,一定得掌握。 ?

要理解什么是通信協(xié)議,也許某一天你自己就需要定制一個協(xié)議來傳輸數(shù)據(jù)。?

分組交換是什么意思? 協(xié)議分層的本質(zhì)是什么? 什么叫無狀態(tài)的協(xié)議? ?

Socket相關(guān)的編程更是重點,尤其是涉及到服務(wù)器端高并發(fā)的時候,如何維持和處理這些海量的socket, epoll等技術(shù)就得上場了。?

還有非常重要的HTTPs的基本原理,也是網(wǎng)絡(luò)安全的精華所在:對稱加密,非對稱加密,消息摘要,數(shù)字證書,中間人攻擊。?

?

數(shù)據(jù)庫


不多說,關(guān)系模型、范式、SQL、索引、事務(wù)等知識都得掌握,尤其是要了解他們的實現(xiàn)方式。?

?

分布式的基礎(chǔ)知識


這些已經(jīng)偏向應(yīng)用層面了,但是現(xiàn)在很多系統(tǒng)都是分布式的了,分布式就變成了一種基礎(chǔ)知識。

系統(tǒng)通信:RPC, 消息隊列等?

負(fù)載均衡的原理?

CAP原理,BASE原理,冪等性,一致性模型(強一致性,最終一致性.....)和相關(guān)協(xié)議(兩階段提交,Raft,Paxos......)?

數(shù)據(jù)分片:取模算法,一致性Hash,虛擬桶?

?

基本的設(shè)計思想


下面這幾種設(shè)計思想對我影響很大,需要大家特別注意。但是掌握起來卻很不容易,需要在實踐中不斷地體會:?

正交:各個概念之間可以獨立變化?

抽象:拋棄細(xì)節(jié),找到本質(zhì)和共性

《深入理解計算機系統(tǒng)》一書中提到:“指令集是對CPU的抽象, 文件是對輸入/輸出設(shè)備的抽象, 虛擬存儲器是對程序存儲的抽象, 進程是對一個正在運行的程序的抽象, 而虛擬機是對整個計算機(包括操作系統(tǒng)、處理器和程序)的抽象。 如果你對這句話透徹理解了,說明對計算機系統(tǒng)的認(rèn)識已經(jīng)很深刻了。?

分層:我只想和我的鄰居打交道, 如網(wǎng)絡(luò)協(xié)議,Web應(yīng)用開發(fā)。?

分而治之:大事化小,小事化了,架構(gòu)設(shè)計必備。?

?

關(guān)鍵點來了,怎么學(xué)習(xí)呢?


我原來的方式是先看書,看了很多書,數(shù)據(jù)結(jié)構(gòu),操作系統(tǒng),匯編,網(wǎng)絡(luò)...... 這種辦法的最大問題就是枯燥(嗯,那時候還沒有碼農(nóng)翻身這樣用故事講解技術(shù)的文章)。

理論多,實踐少,很多知識點體會不深, 等到參與的項目多了,Coding多了,這些知識點才慢慢地鮮活起來。 ?

一種更加有效的辦法是從工作中用到的知識點出發(fā),從這個知識點向外擴展,由點到線,由線到面,然后讓各個層次都連接起來,形成一個立體的網(wǎng)絡(luò)。?

切記,學(xué)習(xí)是一個螺旋上升的過程,想要上升就得深度思考,多問幾個為什么。?

比如工作中用到了Redis,你在學(xué)習(xí)過程中發(fā)現(xiàn)這個Redis用了單線程來處理讀寫請求,為什么要這么做? 對于成千上萬的請求它是如何處理的? 然后再聯(lián)想一下別的軟件:Tomcat為什么不這么干? 想回答這些問題,需要發(fā)掘很多基礎(chǔ)知識。?

這樣做的次數(shù)多了,積累到一定程度,量變就會引起質(zhì)變,整個系統(tǒng)就被你看透了,你的知識又?jǐn)U大了一圈,更多的疑問出現(xiàn)了......

總結(jié)

以上是生活随笔為你收集整理的那些让你起飞的计算机基础知识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲一区二区 | 五月婷婷综合在线 | 亚洲国产精品久久久久久久 | 青娱乐自拍视频 | 亚洲激情中文字幕 | 超碰成人福利 | 国产东北女人做受av | 国产一在线观看 | 日本一区免费电影 | bt天堂新版中文在线地址 | 欧美一区亚洲 | 毛片在线网 | 亚洲熟妇无码一区二区三区 | 午夜福利三级理论电影 | 岛国福利视频 | 午夜国产一区二区 | 欧美偷拍精品 | 欧美无玛| 亚洲永久免费av | 激情亚洲网 | 男人桶女人桶爽30分钟 | 欧美日韩国产一区在线 | 视频在线观看免费大片 | 黄色视屏免费 | 亚洲综合av一区 | 一级成人免费 | 自拍三级视频 | 少妇被又大又粗又爽毛片久久黑人 | 国产伦精品 | 日韩精品一区二区三区在线视频 | 男女ss视频 | 一个人免费在线观看视频 | 亚洲精品97久久中文字幕无码 | 超碰成人免费在线 | 亚洲精品在线视频观看 | 欧洲亚洲国产精品 | 亚洲调教 | 青春草久久 | 欧美日韩一区二区在线观看视频 | 男女视频免费观看 | 美女扒开尿口给男人看 | 国产奶头好大揉着好爽视频 | 国产欧美日韩精品一区 | 亚洲性生活 | 男女插插插视频 | 日韩欧美一区二区三区久久婷婷 | 国产黄色影院 | 成年人在线观看视频免费 | 欧美aa级 | 国模杨依粉嫩蝴蝶150p | 女王脚交玉足榨精调教 | 日韩五十路| 欧美视频久久 | 6—12呦国产精品 | 乱图区| 国产又粗又硬又黄的视频 | 午夜小视频在线观看 | 国产人伦精品一区二区三区 | 制服.丝袜.亚洲.中文.综合懂 | 国产精品久久久久久久久夜色 | 无码人妻aⅴ一区二区三区日本 | 精品国产福利 | 男人操女人网站 | 男人激烈吮乳吃奶爽文 | 中文字幕黄色片 | 久久久久亚洲AV成人无在 | 国产精品男女视频 | 日本性爱视频在线观看 | 97成人在线 | 日本成人免费观看 | 操极品美女 | 超碰香蕉 | 日本真人做爰免费视频120秒 | 亚洲清纯国产 | 免费看黄色一级视频 | 亚洲AV成人无码精电影在线 | 综合久久综合久久 | 久久久久亚洲av片无码 | 亚洲区免费 | 久久av在线 | 九九九在线视频 | 精品国产黄 | 日韩一区二区三区三四区视频在线观看 | 国产精品成人久久久久久久 | 久久久久久亚洲中文字幕无码 | 欧美黄色一区 | 在线观看中文字幕一区二区 | 丝袜美女av | 亚洲午夜视频在线观看 | 男人天堂免费视频 | 色玖玖| 精品xxx| 国产精品视频一区二区三 | 欧美伊人| 97精品视频在线 | 国产一区二区三区日韩 | 风间ゆみ大战黑人 | 夜夜天堂| 午夜精品在线视频 |