字長,機器字長,CPU字長等


      感覺對這些概念很是搞不清....   以下都是摘自百度百科,也沒怎么整理,看完后,還是覺得有點搞不懂,有不少疑問需解決(最后)。

 

      字節:數據存儲是以“字節”(Byte)為單位,數據傳輸是以“位”(bit)為單位,一個位就代表一個0或1,每8個位(bit)組成一個字節 (Byte)。8bit=1Byte 注意1b不等於1B,數據傳輸是以10進制表示,數據存儲是以2進制表示所以1Kb不等於 1KB,1Kb=1000bit,1KB=1024Byte=1024*8bit

      在ASCII碼中,一個英文字母(不分大小寫)占一個字節的空間,一個中文漢字占兩個字節的空間。

 

      :在計算機中,一串數碼作為一個整體來處理或運算的,稱為一個計算機字,簡稱字。字通常分為若干個字節(每個字節一般是8位)。在存儲器中,通常每個單元存儲一個字,因此每個字都是可以尋址的。字的長度用位數來表示。

      在計算機的運算器、控制器中,通常都是以字為單位進行傳送的。字出現在不同的地址其含義是不相同。例如,送往控制器去的字是指令,而送往運算器去的字就是一個數。

 

      字長計算機的每個字所包含的位數稱為字長。根據計算機的不同,字長有固定的和可變的兩種。固定字長,即字長度不論什么情況都是固定不變的;可變字長,則在一定范圍內,其長度是可變的。

      計算的字長是指它一次可處理的二進制數字的數目。計算機處理數據的速率,自然和它一次能加工的位數以及進行運算的快慢有關。如果一台計算機的字長是另一台計算機的兩倍,即使兩台計算機的速度相同,在相同的時間內,前者能做的工作是后者的兩倍。

      一般地,大型計算機的字長為32―64位,小型計算機為12―32位,而微型計算機為4一16位。字長是衡量計算機性能的一個重要因素。

 

 

      單元地址:單元地址簡稱地址,在存儲器中每個存儲單元都有唯一的地址編號,稱為單元地址。

假設一個存儲器的地址碼由20位二進制數(即5位十六進制數)組成,則可表示2的20次方,即1M個存儲單元地址。每個存儲單元存放一個字節,則該存儲器的存儲容量為1MB。

 

      編址:存儲器是由一個個存儲單元構成的,為了對存儲器進行有效的管理,就需要對各個存儲單元編上號,即給每個單元賦予一個地址碼,這叫編址。經編址后,存儲器在邏輯上便形成一個線性地址空間。

 

 

      存儲單元一般應具有存儲數據和讀寫數據的功能,一般以8位二進制作為一個存儲單元,也就是一個字節。每個單元有一個地址,是一個整數編碼,可以表示為二進制整數。

      一個存儲單元通常可以存放一個字或若干個字節;存儲單元是CPU訪問存儲器的基本單位。

      存放一個機器字的存儲單元,通常稱為字存儲單元,相應的單元地址叫字地址。而存放一個字節的單元,稱為字節存儲單元,相應的地址稱為字節地址。如果計算機中可以編址的最小單元是字存儲單元,則該計算機稱為按字尋址的計算機。如果計算機中可編址的最小單位是字節,則該計算機稱為按字節尋址的計算機。如果機器字長等於存儲器單元的位數,一個機器字可以包含數個字節,所以一個存儲單元也可以包含數個能夠單獨編址的字節地址。例如一個16位二進制的字存儲單元可存放兩個字節,可以按字地址尋址,也可以按字節地址尋址。當用字節地址尋址時,16位的存儲單元占兩個字節地址。

 

 

      存儲元:存儲器的最小存儲單元,它的作用是用來存放一位二進制代碼0或1,任何具有兩個穩定狀態(雙穩態)的物理器件都可以來做存儲元。一個雙穩態半導體電路或一個CMOS晶體管或磁性材料的存儲元,均可以存儲一個二進制代碼。

 

 

      機器字長:是指計算機進行一次整數運算所能處理的二進制數據的位數(整數運算即定點整數運算)。機器字長也就是運算器進行定點數運算的字長,通常也是CPU內部數據通路的寬度。即字長越長,數的表示范圍也越大,精度也越高。機器的字長也會影響機器的運算速度。倘若CPU字長較短,又要運算位數較多的數據,那么需要經過兩次或多次的運算才能完成,這樣勢必影響整機的運行速度。

      機器字長與主存儲器字長通常是相同的,但也可以不同。不同的情況下,一般是主存儲器字長小於機器字長,例如機器字長是32位,主存儲器字長可以是32位,也可以是16位,當然,兩者都會影響CPU的工作效率。

 

 

      CPU字長電腦技術中對CPU在單位時間內(同一時間)能一次處理的二進制數的位數叫字長。所以能處理字長為8位數據的CPU通常就叫8位的CPU。同理32位的CPU就能在單位時間內處理字長為32位的二進制數據。

 

 

      存儲字長一個存儲單元存儲一串二進制代碼(存儲字),這串二進制代碼的位數稱為存儲字長,存儲字長可以是8位、16位、32位等。

      早期計算機的存儲字長一般和機器的指令字長與數據字長相等,故訪問一次主存便可取一條指令或一個數據。隨着計算機的應用范圍的不斷擴大,解題精度的不斷提高,往往要求指令字長是可變的,數據字長也要求可變。為了適應指令和數據字長的可變性,其長度不由存儲字長來確定,而且字節的個數來表示。1個字節(Byte)被定義為由8位(Bit)二進制代碼組成。

 

 

 

       程序計數器(PC)的內容即是從內存提取的一條指令的地址,當執行指令時,CPU將自動修改PC的內容,即每執行一條指令PC增加一個量,這個量等於指令 所含的字節數,以便使其保持的總是將要執行的下一條指令的地址。由於大多數指令都是按順序來執行的,所以修改的過程通常只是簡單的對PC加1。

 

我的疑問如下:
      1.機器字長與CPU字長是不是同個概念?

      2.計算機的字長與上述2個哪個相關??


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM