国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

做 在線觀看免費(fèi)網(wǎng)站網(wǎng)站投放廣告費(fèi)用

做 在線觀看免費(fèi)網(wǎng)站,網(wǎng)站投放廣告費(fèi)用,wordpress獲取文章發(fā)表時(shí)間,wordpress獨(dú)立頁面馮諾依曼模型 馮諾依曼模型主要由五部分組成:運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備、輸出設(shè)備。 控制器(Control Unit):從內(nèi)存中取指令、翻譯指令、分析指令,然后根據(jù)指令的內(nèi)存向有關(guān)部件發(fā)送控制命令,控制相…

馮諾依曼模型

馮諾依曼模型主要由五部分組成:運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備、輸出設(shè)備。

控制器(Control Unit):從內(nèi)存中取指令、翻譯指令、分析指令,然后根據(jù)指令的內(nèi)存向有關(guān)部件發(fā)送控制命令,控制相關(guān)部件執(zhí)行指令所包含的操作。

運(yùn)算器(ALU):處理數(shù)據(jù),完成各種算術(shù)運(yùn)算和邏輯運(yùn)算。

計(jì)算機(jī)運(yùn)算時(shí),運(yùn)算器的操作對(duì)象和操作種類由控制器決定。運(yùn)算器操作的數(shù)據(jù)從內(nèi)存中讀取,處理的結(jié)果再寫入內(nèi)存(或暫時(shí)放在內(nèi)部寄存器中),而且運(yùn)算器對(duì)內(nèi)存數(shù)據(jù)的讀寫是由控制器來進(jìn)行的。

存儲(chǔ)器(Memory):存儲(chǔ)程序和各種數(shù)據(jù)。

  • 內(nèi)部存儲(chǔ)器(內(nèi)存、主存):存取速度快,容量小價(jià)格高。用來存放即將執(zhí)行的程序和數(shù)據(jù),可供CPU直接讀取。
    • 隨機(jī)存儲(chǔ)器(RAM):可以被CPU隨機(jī)讀取(讀取任何一個(gè)地址數(shù)據(jù)的速度是一樣的,寫入任何一個(gè)地址數(shù)據(jù)的速度也是一樣的),一般存放CPU將要執(zhí)行的程序、數(shù)據(jù),斷電丟失。
    • 只讀存儲(chǔ)器(ROM):只能被CPU讀,不能輕易被CPU寫用來存儲(chǔ)永久性的程序和數(shù)據(jù),比如:系統(tǒng)引導(dǎo)程序、監(jiān)控程序等。掉電易失。
    • 高速緩存存儲(chǔ)器(cache):Cache是計(jì)算機(jī)中的一個(gè)高速小容量存儲(chǔ)器,其中存放的是CPU近期要執(zhí)行的指令和數(shù)據(jù),其存取速度可以和CPU的速度匹配,一般采用靜態(tài)RAM充當(dāng)Cache。
  • 外部存儲(chǔ)器:存取速度慢。用來存放暫時(shí)不用的程序和數(shù)據(jù),可以和內(nèi)存交換數(shù)據(jù),不需要依賴電來存儲(chǔ)數(shù)據(jù)。如硬盤、光盤...

輸入設(shè)備與輸出設(shè)備:鼠標(biāo)、鍵盤、顯示器、打印機(jī)等

存儲(chǔ)單元與輸入輸出設(shè)備要和中央處理器打交道的話離不開總線。所以他們的關(guān)系如下:

內(nèi)存

我們的程序和數(shù)據(jù)都存儲(chǔ)在內(nèi)存,存儲(chǔ)的區(qū)域是線性的。

在計(jì)算機(jī)數(shù)據(jù)存儲(chǔ)中,存儲(chǔ)數(shù)據(jù)的基本單位是字節(jié)(byte), 1字節(jié) = 8 位(bit)。每個(gè)字節(jié)都對(duì)應(yīng)一個(gè)內(nèi)存地址。

內(nèi)存的地址是從 0 開始編號(hào)的,然后自增排序,最后一個(gè)地址為內(nèi)存總字節(jié)數(shù)-1,這種結(jié)構(gòu)與程序中的數(shù)組類似,所以內(nèi)存中讀寫任何一個(gè)數(shù)據(jù)的速度都是相同的。

中央處理器

中央處理器也就是CPU,32位和64位CPU的主要區(qū)別在于一次性能計(jì)算多少字節(jié)數(shù)據(jù):

  • 32位CPU一次可以計(jì)算4個(gè)字節(jié)
  • 64位CPU一次可以計(jì)算8個(gè)字節(jié)

這里的32位和64位,通常稱為CPU的位寬,代表的是CPU一次可以計(jì)算(運(yùn)算)的數(shù)據(jù)量。

之所以CPU要這樣設(shè)計(jì),是為了能計(jì)算更大的數(shù)值,如果是8位CPU那么一次只能計(jì)算一個(gè)字節(jié)- 0~255范圍內(nèi)的數(shù)值,這樣就無法完成1000*500的計(jì)算,為了能一次計(jì)算大數(shù)的運(yùn)算,CPU需要支持多個(gè)byte一起計(jì)算,所以CPU位寬越大,可以計(jì)算的數(shù)值就越大,比如32位CPU能計(jì)算的最大整數(shù)是4294967295。

CPU內(nèi)部還有一些組件,常見的有寄存器、控制單元和邏輯運(yùn)算單元。其中,控制單元負(fù)責(zé)控制CPU的工作,邏輯運(yùn)算單元負(fù)責(zé)計(jì)算,而寄存器可以分為多種類型,每種寄存器的功能不盡相同。

為什么有了內(nèi)存還需要寄存器?

因?yàn)閮?nèi)存離CPU太遠(yuǎn)了,而寄存器就在CPU內(nèi),緊挨著控制單元和邏輯運(yùn)算單元,速度會(huì)更快。

常見寄存器種類:

  • 通用寄存器,用來存放需要進(jìn)行運(yùn)算的數(shù)據(jù),比如需要進(jìn)行加和運(yùn)算的兩個(gè)數(shù)據(jù)
  • 程序計(jì)數(shù)器,用來存儲(chǔ)CPU要執(zhí)行的下一條指令[所在的內(nèi)存地址],注意不是存儲(chǔ)下一條要執(zhí)行的指令,此時(shí)指令還在內(nèi)存中,程序計(jì)數(shù)器只是存儲(chǔ)了下一條指令[的地址]。
  • 指令寄存器,用來存放當(dāng)前正在執(zhí)行的指令,也就是指令本身,指令被執(zhí)行完之前都存儲(chǔ)在這里。

總線

總線是用于CPU和內(nèi)存以及其他設(shè)備之間的同學(xué),總線分為三種:

  • 地址總線,用于指定CPU將要操作的內(nèi)存地址
  • 數(shù)據(jù)總線,用于讀寫內(nèi)存的數(shù)據(jù)
  • 控制總線,用于發(fā)送和接收信號(hào),比如中斷、設(shè)備復(fù)位等信號(hào)

當(dāng)CPU要讀寫內(nèi)存數(shù)據(jù)的時(shí)候,一般需要通過下面這三個(gè)總線:

  • 首先要通過[地址總線]來指定內(nèi)存的地址
  • 然后通過[控制總線]控制是讀或?qū)懙拿?/li>
  • 最后通過[數(shù)據(jù)總線]來傳輸數(shù)據(jù)

線路位寬與CPU位寬

數(shù)據(jù)是如何通過線路傳輸?shù)哪?#xff1f;其實(shí)是通過操作電壓,低電壓表示0,高電壓表示1.

如果構(gòu)造了 高低高 這樣的電壓,其實(shí)就是 101 二進(jìn)制,十進(jìn)制表示5,如果只有一條線路,就意味著每次只能傳遞1bit的數(shù)據(jù),即0 或 1 ,那么傳輸 101 這個(gè)數(shù)據(jù),就需要3次才能傳輸完成,這樣效率非常低。

這樣一位一位傳輸?shù)姆绞?#xff0c;稱為串行,下一個(gè)bit必須等待上一個(gè)bit傳輸完成才能進(jìn)行傳輸。想一次傳多一些數(shù)據(jù),增加線路即可,這時(shí)數(shù)據(jù)就可以并行傳輸。

為了避免低效率的串行傳輸方式,線路的位寬最好一次能夠訪問到所有的內(nèi)存地址。

CPU想要操作[內(nèi)存地址]就需要[地址總線]:

  • 如果地址總線只有1條,那每次只能表示 [ 0 或 1]這兩種地址,所以CPU能操作的內(nèi)存地址最大數(shù)量為 2 個(gè)。(不能理解為同時(shí)操作兩個(gè)內(nèi)存地址)
  • 如果地址總線有2條,那么能表示00、01、10、11四種地址,所以CPU能操作的內(nèi)存地址最大數(shù)量為 4 個(gè)

那么,想要CPU操作4G的內(nèi)存,就需要 32條地址總線。?{2}^{32} = 4 * {2}^{10}*{2}^{10}*{2}^{10} = 4 G

CPU的位寬最好不要小于線路的位寬 ,比如32位CPU控制40位寬的地址總線和數(shù)據(jù)總線的話,工作起來會(huì)非常麻煩,所以32位的CPU最好和32位寬的線路搭配,因?yàn)?2位CPU一次最多只能操作32位寬的地址總線和數(shù)據(jù)總線。

如果用32位CPU去加和兩個(gè)64位大小的數(shù)字·,就需要把這兩個(gè)64位的數(shù)字分成2個(gè)低位32位數(shù)字和2個(gè)高位32位數(shù)字來計(jì)算,先加兩個(gè)低位的32位數(shù)字,算出進(jìn)位,然后加和兩個(gè)高位的32位數(shù)字,最后再加上進(jìn)位就能算出結(jié)果了,可以發(fā)現(xiàn)32位CPU并不能一次性算出加和兩個(gè)64位的數(shù)字的結(jié)果。

對(duì)于64位CPU就可以一次性算出加和兩個(gè)64位數(shù)字的結(jié)果,因?yàn)?4位CPU可以一次讀入64位的數(shù)字,并且64位CPU內(nèi)部的邏輯運(yùn)算單元也支持64位數(shù)字的計(jì)算。

但是并不代表64位CPU性能比32位CPU高很多,很少應(yīng)用需要算超過32位的數(shù)字,所以如果計(jì)算的數(shù)額不超過32位數(shù)字的情況下,32位和64位CPU之間沒什么區(qū)別,只有當(dāng)計(jì)算超過32位數(shù)字的情況下,64位的優(yōu)勢(shì)才能體現(xiàn)出來。

另外,32位CPU最大只能操作4GB內(nèi)存,就算裝了8GB的內(nèi)存條,也沒用。而64位CPU尋址范圍則很大,理論最大尋址空間為{2}^{64}.


程序執(zhí)行的基本過程

程序?qū)嶋H上是一條一條的指令,所以程序的運(yùn)行過程就是把每一條指令一步一步的執(zhí)行起來,負(fù)責(zé)執(zhí)行指令的就是CPU。

?CPU執(zhí)行程序的過程如下:

  1. CPU讀取[程序計(jì)數(shù)器]的值,這個(gè)值是指令的內(nèi)存地址,然后CPU的[控制單元]操作[地址總線]指定需要訪問的內(nèi)存地址,接著通知內(nèi)存設(shè)備準(zhǔn)備數(shù)據(jù),數(shù)據(jù)準(zhǔn)備好后通過[數(shù)據(jù)總線]將指令數(shù)據(jù)傳給CPU,CPU收到內(nèi)存?zhèn)鱽淼臄?shù)據(jù)后,將這個(gè)指令數(shù)據(jù)存入到[指令寄存器]。
  2. [程序計(jì)數(shù)器]的值自增,表示指向下一個(gè)指令[地址]。這個(gè)自增的大小由CPU的位寬決定,比如32位的CPU,指令是4個(gè)字節(jié),需要4個(gè)內(nèi)存地址存放,因此[程序計(jì)數(shù)器]的值會(huì)加4。
  3. CPU分析[指令寄存器]中的指令,確定指令的類型和參數(shù),如果是計(jì)算類型的指令,就把指令交給[邏輯運(yùn)算單元]運(yùn)算;如果是存儲(chǔ)類型的指令,則交由[控制單元]執(zhí)行。

總結(jié):一個(gè)程序執(zhí)行的時(shí)候,CPU會(huì)根據(jù)程序計(jì)數(shù)器的內(nèi)存地址,從內(nèi)存里面把需要執(zhí)行的指令讀到指令寄存器里面執(zhí)行,然后根據(jù)指令長(zhǎng)度自增,開始順序讀取下一條指令。

CPU從程序計(jì)數(shù)器讀取指令、到執(zhí)行、再到下一條指令,這個(gè)過程會(huì)不斷循環(huán),直到程序結(jié)束,這個(gè)不斷循環(huán)的過程被稱為CPU的指令周期


a = 1 + 2的具體執(zhí)行過程

CPU是不認(rèn)識(shí) a = 1 + 2 這個(gè)字符串的,這些字符串只是方便我們認(rèn)識(shí),想要這段程序能跑起來,還需要把整個(gè)程序翻譯成匯編語言的程序,這個(gè)過程被稱為編譯

除此之外,我們還需要用匯編器翻譯成機(jī)器碼,這些機(jī)器碼由 0 和 1 組成機(jī)器語言,這一條條機(jī)器碼,就是一條條的計(jì)算機(jī)指令,這個(gè)才是CPU認(rèn)識(shí)的東西。

?a = 1 + 2 在32位CPU的執(zhí)行過程。

程序編譯過程中,編譯器通過分析代碼,發(fā)現(xiàn) 1 和 2 是數(shù)據(jù),于是程序運(yùn)行時(shí),內(nèi)存會(huì)有一個(gè)專門的區(qū)域來存放這些數(shù)據(jù),這個(gè)區(qū)域就是[數(shù)據(jù)段]。

  • 數(shù)據(jù)1被存放到0x200位置
  • 數(shù)據(jù)2被存放到0x204位置

數(shù)據(jù)和指令是分開存放的,存放數(shù)據(jù)的區(qū)域稱為[數(shù)據(jù)段],存放指令的區(qū)域稱為[正文段]。

編譯器會(huì)把 a = 1 + 2 翻譯成 4 條指令,存放到正文段中。如圖,這4條指令被存放到了0x100~0x10c的區(qū)域中:

  • 0x100的內(nèi)容是 load 指令將0x200地址中的數(shù)據(jù) 1 裝入到寄存器 R0
  • 0x104的內(nèi)容是 load 指令將0x204地址中的數(shù)據(jù) 2 裝入到寄存器 R1
  • 0x108的內(nèi)容是 add 指令將寄存器 R0 R1 的數(shù)據(jù)相加,并把結(jié)果存放到寄存器 R2
  • 0x10c的內(nèi)容是 store 指令將寄存器 R2 中的數(shù)據(jù)存回?cái)?shù)據(jù)段中的0x208地址中,這個(gè)地址也就是變量 a 內(nèi)存中的地址;

編譯完成后,具體執(zhí)行程序的時(shí)候,程序計(jì)數(shù)器會(huì)被設(shè)置為0x100地址,然后依次執(zhí)行這4條指令。(上面的例子中,由于是在32位CPU執(zhí)行的,因此指令是占32位大小,所以每條指令的地址隔4個(gè)字節(jié)。數(shù)據(jù)的大小事根據(jù)程序中指定的變量類型,比如 int 類型的數(shù)據(jù)占4個(gè)字節(jié),char類型的數(shù)據(jù)占1個(gè)字節(jié))


總結(jié)

64位相比32位優(yōu)勢(shì)在哪? 64位CPU性能一定比32位CPU高很多嗎?

64位相比32位CPU的優(yōu)勢(shì)主要體現(xiàn)在兩個(gè)方面:

  • 64位CPU可以一次計(jì)算超過32位的數(shù)字,而32位CPU如果要計(jì)算超過32位的數(shù)字,要分多步驟進(jìn)行計(jì)算,效率就沒那么高,但是大部分應(yīng)用程序很少會(huì)計(jì)算那么大的數(shù)字,所以只有運(yùn)算大數(shù)字的時(shí)候,64位CPU的優(yōu)勢(shì)才能體現(xiàn)出來,否則和32位CPU的計(jì)算性能相差不大。
  • 通常來說64位CPU的地址總線是48位,而32位CPU的地址總線是32位,所以64位CPU可以尋址更大的物理內(nèi)存空間。如果一個(gè)32位CPU的地址總線是32位那么該CPU的最大尋址能力是4G,即使使用8G大小的內(nèi)存,也還是只能尋址到4G大小的地址,而如果一個(gè)64位CPU的地址總線是48位,那么該CPU的最大尋址范圍是{2}^{48},遠(yuǎn)超于32位CPU的最大尋址能力。

32位軟件和64位軟件的區(qū)別?32位操作系統(tǒng)能夠運(yùn)行在64位電腦上嗎?

64位和32位軟件,實(shí)際上代表指令是64位還是32位:

  • 如果32位指令在64位機(jī)器上執(zhí)行,需要一套兼容機(jī)制就可以做到兼容運(yùn)行了。但是如果64位指令在32位機(jī)器上運(yùn)行,就比較困難,因?yàn)?2位寄存器存不下64位的指令。
  • 操作系統(tǒng)其實(shí)也是一種程序,操作系統(tǒng)也分為32位和64位,其代表的意思就是操作系統(tǒng)中程序的指令是多少位,64位操作系統(tǒng)指令為64位,不能裝在32位的機(jī)器上。

硬件的64位和32位指的是CPU的位寬,軟件的32位和64位指的是指令的位寬。

http://aloenet.com.cn/news/29047.html

相關(guān)文章:

  • 網(wǎng)站 linux 服務(wù)器配置百度關(guān)鍵詞優(yōu)化曝光行者seo
  • 做雞蛋期貨看什么網(wǎng)站重慶關(guān)鍵詞排名首頁
  • linux 一鍵 WordPress網(wǎng)站免費(fèi)優(yōu)化軟件
  • 做一款推薦類的網(wǎng)站google搜索首頁
  • 網(wǎng)站制作加我百度客服電話號(hào)碼
  • 威海專業(yè)做網(wǎng)站設(shè)計(jì)的公司怎么在百度上推廣自己的產(chǎn)品
  • 什么瀏覽器可以進(jìn)黃頁zol問答沈陽seo按天計(jì)費(fèi)
  • 注冊(cè)微信小程序流程直通車優(yōu)化推廣
  • 做推廣哪個(gè)平臺(tái)網(wǎng)站好百度網(wǎng)站收錄提交入口全攻略
  • 長(zhǎng)春網(wǎng)站建設(shè)聯(lián)系吉網(wǎng)傳媒優(yōu)愛站關(guān)鍵詞挖掘old
  • 沈陽市網(wǎng)站建設(shè)報(bào)價(jià)凡科建站網(wǎng)站
  • 做單頁網(wǎng)站怎么選產(chǎn)品免費(fèi)seo網(wǎng)站
  • 網(wǎng)站排名優(yōu)化機(jī)構(gòu)汕頭網(wǎng)站建設(shè)開發(fā)
  • 做視頻網(wǎng)站需要什么資質(zhì)廈門seo百度快照優(yōu)化
  • 哈爾濱建設(shè)網(wǎng)站哪家好市場(chǎng)推廣專員
  • joomla 網(wǎng)站建設(shè)教程不受國(guó)內(nèi)限制的搜索引擎
  • 大連企業(yè)網(wǎng)站排名東莞網(wǎng)絡(luò)推廣及優(yōu)化
  • 做網(wǎng)站網(wǎng)站建設(shè)教程滄州網(wǎng)站建設(shè)優(yōu)化公司
  • 網(wǎng)站標(biāo)題字體設(shè)計(jì)湖南企業(yè)seo優(yōu)化首選
  • 企業(yè)域名申請(qǐng)流程百度seo優(yōu)化推廣公司
  • 社交網(wǎng)絡(luò)推廣方法有哪些寧波seo外包快速推廣
  • 南通網(wǎng)站建設(shè)公司排名適合企業(yè)員工培訓(xùn)的課程
  • 上海十大網(wǎng)站建設(shè)西安seo服務(wù)
  • 學(xué)校網(wǎng)站的目的發(fā)布廣告的平臺(tái)免費(fèi)
  • 如何將網(wǎng)站做的更美觀seo技術(shù)代理
  • 淘寶做促銷的網(wǎng)站個(gè)人如何推廣app
  • 電子商務(wù)中網(wǎng)站開發(fā)查詢網(wǎng)站流量
  • 洛陽網(wǎng)站排名百家號(hào)查詢排名數(shù)據(jù)查詢
  • 做復(fù)刻手表的網(wǎng)站家居seo整站優(yōu)化方案
  • wordpress自定義功能深圳seo推廣培訓(xùn)