1、請問:計算機如何區別指令和數據?兩者定義各是什麼呢?
從形式上看,指令和數據都是二進制數碼,似乎很難區分,然而控制器完全可以共分哪些是指令,哪些是數據,。一般來講,取指周期中從內存讀出的信息流是指令流,它流向控制器,而在執行周期中從內存讀出的信息流是數據流,它由內存流向運算器。。
今天剛學的。。僅供參考。。
2、指令和數據都用二進制代碼存放在內存中,從時空觀角度回答CPU如何區分讀出的代碼是指令還是數據。
指令和數據均存放在內存中,CPU是從時間和空間上區分它們是指令還是數據的。
時間上講,取指令事件發生在「取指周期」,取數據事件發生在「執行周期」。
從空間上講,從內存讀出的指令流流向控制器(指令寄存器)。從內存讀出的數據流流向運算器(通用寄存器)。
3、指令和數據都用二進制代碼存放在內存中,從時空觀角度回答CPU如何區分讀出的代碼是
不知道你有沒有學過Computer Architecture 存放在內存中的時候 有對齊(alignment)的規則,打個比方 一行有32個格子 指令的長度(假定是變長指令)為1-8 那麼指令開頭都必須放在1 9 17 25號格子(無論指令是長是短)(這是空間上的)
時間上的,那麼首先根據程序入口點讀進來的肯定是指令 指令中涉及的在內存中的數據 由指令可以知道數據的長度是16位還是32位 那麼就知道要從哪個地址讀多少位了 事實上 數據也是對齊的 所以不會發生混亂的情況
4、英語語言中的information words,信息字,用英文怎麼解釋?
information word 信息元,計算機字 = data word 即數據字
data word [′dad·ə ‚wərd]
(computer science) A computer word that is part of the data which the computer is manipulating, in contrast with an instruction word. Also known as information word.
instruction word [in′strək·shən ‚wərd] 指令字
(computer science) A computer word containing an instruction rather than data. Also known as coding line.
二者區別即數據與指令的區別。
數據和指令的本質區別?
這個問題一般出現在匯編語言中。
每一條指令語句在源程序匯編時都要產生可供計算機執行的指令代碼(即目標代碼),所以這種語句又叫可執行語句。每一條指令語句表示計算機具有的一個基本能力,如數據傳送,兩數相加或相減,移位等,而這種能力是在目標程序(指令代碼的有序集合)運行時完成的,是依賴於汁算機內的中央處理器(CPU)、存儲器、I/O介面等硬體設備來實現的。
從形式上看,指令和數據都是二進制數碼,似乎很難區分,然而控制器完全可以區分哪些是指令,哪些是數據,。一般來講,取指周期中從內存讀出的信息流是指令流,它流向控制器,而在執行周期中從內存讀出的信息流是數據流,它由內存流向運算器。
5、計算機組成原理習題答案?
第一章
1. 模擬計算機的特點是數值由連續量來表示,運算過程也是連續的。數字計算機的主要特點是按位運算,並且不連續地跳動計算。模擬計算機用電壓表示數據,採用電壓組合和測量值的計算方式,盤上連線的控制方式,而數字計算機用數字0和1表示數據,採用數字計數的計算方式,程序控制的控制方式。數字計算機與模擬計算機相比,精度高,數據存儲量大,邏輯判斷能力強。
2. 數字計算機可分為專用計算機和通用計算機,是根據計算機的效率、速度、價格、運行的經濟性和適應性來劃分的。
3. 科學計算、自動控制、測量和測試、信息處理、教育和衛生、家用電器、人工智慧。
4. 主要設計思想是:存儲程序通用電子計算機方案,主要組成部分有:運算器、邏輯控制裝置、存儲器、輸入和輸出設備
5. 存儲器所有存儲單元的總數稱為存儲器的存儲容量。每個存儲單元都有編號,稱為單元地址。如果某字代表要處理的數據,稱為數據字。如果某字為一條指令,稱為指令字。
6. 每一個基本操作稱為一條指令,而解算某一問題的一串指令序列,稱為程序。
7. 取指周期中從內存讀出的信息流是指令流,而在執行器周期中從內存讀出的信息流是指令流。
8. 半導體存儲器稱為內存,存儲容量更大的磁碟存儲器和光碟存儲器稱為外存,內存和外存共同用來保存二進制數據。運算器和控制器合在一起稱為中央處理器,簡稱CPU,它用來控制計算機及進行算術邏輯運算。適配器是外圍設備與主機聯系的橋梁,它的作用相當於一個轉換器,使主機和外圍設備並行協調地工作。
9. 計算機的系統軟體包括系統程序和應用程序。系統程序用來簡化程序設計,簡化使用方法,提高計算機的使用效率,發揮和擴大計算機的功能用用途;應用程序是用戶利用計算機來解決某些問題而編制的程序。
10. 在早期的計算機中,人們是直接用機器語言來編寫程序的,這種程序稱為手編程序或目的程序;後來,為了編寫程序方便和提高使用效率,人們使用匯編語言來編寫程序,稱為匯編程序;為了進一步實現程序自動化和便於程序交流,使不熟悉具體計算機的人也能很方便地使用計算機,人們又創造了演算法語言,用演算法語言編寫的程序稱為源程序,源程序通過編譯系統產生編譯程序,也可通過解釋系統進行解釋執行;隨著計算機技術的日益發展,人們又創造出操作系統;隨著計算機在信息處理、情報檢索及各種管理系統中應用的發展,要求大量處理某些數據,建立和檢索大量的表格,於是產生了資料庫管理系統。
11. 從第一至五級分別為微程序設計級、一般機器級、操作系統級、匯編語言級、高級語言級。採用這種用一系列的級來組成計算機的概念和技術,對了解計算機如何組成提供了一種好的結構和體制。而且用這種分級的觀點來設計計算機,對保證產生一個良好的系統結構也是很有幫助的。
12. 因為任何操作可以由軟體來實現,也可以由硬體來實現;任何指令的執行可以由硬體完成,也可以由軟體來完成。實現這種轉化的媒介是軟體與硬體的邏輯等價性。
13. ( 略 )
第二章
1.(1)
(2)
(3)-127
-127 = -7F = -1111111
[-127]原 = 11111111
[-127]補 = 10000001
[-127]反 = 10000000
[-127]移 = 00000001
(4)[-1]原 = 1000 0000
[-1]補 = 1000 0000
[-1]反 = 1111 1111
[-1]移 = 0000 0000
(5)-1 = -00000001
[-1]原 = 1000 0001
[-1]補 = 1111 1111
[-1]反 = 1111 1110
[-1]移 = 0111 1111
2.[x]補 = a0. a1a2…a6
解法一、
(1) 若a0 = 0, 則x > 0, 也滿足x > -0.5
此時a1→a6可任意
(2) 若a0 = 1, 則x <= 0, 要滿足x > -0.5, 需a1 = 1
即a0 = 1, a1 = 1, a2→a6有一個不為0
解法二、
-0.5 = -0.1(2) = -0.100000 = 1, 100000
(1) 若x >= 0, 則a0 = 0, a1→a6任意即可
[x]補 = x = a0. a1a2…a6
(2) 若x < 0, 則x > -0.5
只需-x < 0.5, -x > 0
[x]補 = -x, [0.5]補 = 01000000
即[-x]補 < 01000000
即a0a1 = 11, a2→a6不全為0或至少有一個為1(但不是「其餘取0」)
3.字長32位浮點數,階碼10位,用移碼表示,尾數22位,用補碼表示,基為2
(1) 最大的數的二進製表示
E = 111111111
Ms = 0, M = 11…1(全1)
表示為: 11…1 011…1
10個 21個
即:
(2) 最小的二進制數
E = 111111111
Ms = 1, M = 00…0(全0)(注意:用10….0來表示尾數-1)
表示為: 11…1 100…0
10個 21個
即:
(3) 規格化范圍
正最大 E = 11…1, M = 11…1, Ms = 0
10個 21個
即:
正最小 E = 00…0, M = 100…0, Ms = 0
10個 20個
即:
負最大 E = 00…0, M = 011…1, Ms = 1
10個 20個
(最接近0的負數)即:
負最小 E = 11…1, M = 00…0, Ms =1
10個 21個
即:
規格化所表示的范圍用集合表示為:
[ , ] [ , ]
(4) 最接近於0的正規格化數、負規格化數(由上題可得出)
正規格化數 E = 00…0, M = 100…0, Ms = 0
10個 20個
負規格化數 E = 00…0, M = 011…1, Ms = 1
10個 20個
4.假設浮點數格式如下:
(1)
階補碼: 1 11
尾數補碼: 0 1101 1000
機器數: 1110 1101 1000
(2)
階補碼: 1 11
尾數補碼: 1 0010 1000
機器數: 1110 0010 1000
5.(1)x = 0.11011, y = 0.00011
x+y = 0.11110
無溢出
(2) x = 0.11011, y = -0.10101
x+y = 0.00110
無溢出
(3)x = -0.10110
y = -0.00001
x+y = -0.10111
無溢出
6.(1)x = 0.11011
y = -0.11111
溢出
(2)x = 0.10111
y = 0.11011
x-y = -0.00100
無溢出
(3)x = 0.11011
y = -0.10011
溢出
7.(1)原碼陣列
x = 0.11011, y = -0.11111
符號位: x0⊕y0 = 0⊕1 = 1
[x]原 = 11011, [y]原 = 11111
[x*y]原 = 1, 11 0100 0101
直接補碼陣列
[x]補 = (0)11011, [y]補 = (1)00001
[x*y]補 = 1,00101,11011(直接補碼陣列不要求)
帶求補器的補碼陣列
[x]補 = 0 11011, [y]補 = 1 00001
乘積符號位單獨運算0⊕1=1
尾數部分算前求補輸出│X│=11011,│y│=11111
X×Y=-0.1101000101
(2) 原碼陣列
x = -0.11111, y = -0.11011
符號位: x0⊕y0 = 1⊕1 = 0
[x]補 = 11111, [y]補 = 11011
[x*y]補 = 0,11010,00101
直接補碼陣列
[x]補 = (1)00001, [y]補 = (1)00101
[x*y]補 = 0,11010,00101(直接補碼陣列不要求)
帶求補器的補碼陣列
[x]補 = 1 00001, [y]補 = 1 00101
乘積符號位單獨運算1⊕1=0
尾數部分算前求補輸出│X│=11111,│y│=11011
太多了,裝不下,要不給我郵箱發個信息吧,收到給你發完整版的[email protected]
6、指令和數據都用二進制代碼存放在內存中,從時空觀角度回答CPU如何區分讀出的代碼是指令還是數據
數據,內存中存在的都是數據沒有指令,內存本身就是為了緩解處理器的高速和硬碟的低速之間的緩沖,因此全是數據,指令是存在緩存中的,另外指令還存在於專門的寄存器中,因此是不會存在在內存里的。
7、取指周期完成的操作是從內存中將指令取到什麼部件
時間和空間不是一個概念!什麼叫做同時啊??你的思維邏輯有點亂啊!
下面是復制的有關CPU的一些概念自己看吧!看完了就解決你的問題了!
5.1 CPU的功能和組成
5.1.1 CPU的功能
使用CPU可以自動完成取出指令和執行指令的任務。
CPU的基本功能:
指令控制:程序的順序控制,稱為指令控制。
操作控制:管理並產生由內存取出的每條指令的操作信號,把各種操作信號送往相應的部件,從而控制這些部件按指令的要求進行動作。
時間控制:對各種操作實施時間上的定時,稱為時間控制。
8、英語語言中的information words,信息字,用英文怎麼解釋
information word 信息元,計算機字 = data word 即數據字
data word [′dad·ə ‚wərd]
(computer science) A computer word that is part of the data which the computer is manipulating,in contrast with an instruction word.Also known as information word.
instruction word [in′strək·shən ‚wərd] 指令字
(computer science) A computer word containing an instruction rather than data.Also known as coding line.
二者區別即數據與指令的區別.
數據和指令的本質區別?
這個問題一般出現在匯編語言中.
每一條指令語句在源程序匯編時都要產生可供計算機執行的指令代碼(即目標代碼),所以這種語句又叫可執行語句.每一條指令語句表示計算機具有的一個基本能力,如數據傳送,兩數相加或相減,移位等,而這種能力是在目標程序(指令代碼的有序集合)運行時完成的,是依賴於汁算機內的中央處理器(CPU)、存儲器、I/O介面等硬體設備來實現的.
從形式上看,指令和數據都是二進制數碼,似乎很難區分,然而控制器完全可以區分哪些是指令,哪些是數據,.一般來講,取指周期中從內存讀出的信息流是指令流,它流向控制器,而在執行周期中從內存讀出的信息流是數據流,它由內存流向運算器.
9、CPU如何區別從內存中讀出的是指令還是數據?
指令有專門的指令碼,一般指令是存放在特定的內存空間里,根數據區域是完全分開的