計算機基礎之計算機硬件軟件數據結構
都是眼力的延伸。電話、收音機、通訊衛星都是耳力的延伸;計算機系統便是人類思維器官——大腦的延伸。
第一部分、計算機基礎
1.為什麽計算機可以進行腦力勞動?
計算機是一種可進行高速運算的可存儲設備。
存儲的程序保證了運算的自己主動性。從而減輕腦力勞作。
2.計算機發展到今天,跟傳統的圖靈機相比最大的突破在什麽地方?最大的限制又在哪裏?你認為未來計算機發展方向?
傳統的圖靈機是在一條可無限延長的織帶上讀寫數據,現代計算機基於馮諾依曼結構,有專門的存儲設備和運算器,CPU是超大規模集成電路,存儲器發展到
SSD,所以在運算速度和存儲容量、讀取數據和指令速度更快;最大的限制就是單純的提高運算速度和存儲速度,可是突破不了馮諾依曼機的瓶頸。
未來計算機,可能脫離了如今計算機的硬件組成_____電子元件,而是發生質與量的變化,生物計算機,光子計算機等
3.計算機作為20世紀最重要的發明之中的一個。給你的生活帶來的改變?
計算機的應用給人帶來翻天覆地的改變。
從通信、教育、工業控制、人工智能等方面來講:
通信:互聯網將世界各地的計算機互聯,能夠共享資料,帶來的便利是海量的資料共享,導致信息爆炸。
教育:通過互聯網絡。實現遠程教育、電子書刊、海量數據庫等便利。
工業控制和制造:利用計算機的高速處理數據能力和數據存儲。能夠實現計算機輔助設計和執照(CAD、CAM),廣泛應用於機械、電子、醫療、生物制藥、建築
,方便地進行磨具設計、數學建模、力學計算、制圖等高精度、精細繪圖或制作。
人工智能:模擬大腦實現智能設計。計算機視覺,模式識別和決策系統,智能機器人等新起交叉學科發展,正在或者將要改變人們生活方式生產技能。
4. 計算機經常使用的數制有哪些(英文作答)?計算機為什麽用二進制數制進行存儲和運算?
計算機常見的數制有:十進制(Decimal)、二進制(Binary)、八進制(Octal) 、十六進制(Hexdecimal) 。
馮諾依曼機原型採用就是二進制運算,其根本原因是二進制剛好能夠表示非常多電子元器件的狀態,比如開關,熄滅。三極管截止和放大等組成的狀態剛好能夠用
二進制表示。計算機進行的運算還有邏輯運算,邏輯運算的“真”與“假”或者其它的形式都能夠用二進制來表示。
5.圖靈機與圖靈獎
阿蘭圖靈:gay
圖靈獎:ACM(美國計算機協會 Association for Computer Machinery)成立。計算機學界中的諾貝爾。
6.馮諾依曼機的構造包括哪幾個部分,每一個部分的作用是如何的?馮機的原理是如何的?馮諾依曼瓶頸是什麽?
馮諾依曼機是現代計算機的原型,主要包含幾個部分:輸入設備,運算器,存儲器,控制器。輸出設備。
運算器:機器的核心,從內存中取數據。可進行數值計算、邏輯運算、移位運算等,基本單位是MIPS。
控制器:控制中心,從內存中取指令。分析解析指令。對運算器發出控制信號,確保程序能自己主動執行。
存儲器:內存和外存。內存,主要是和設備打交道的數據臨時存儲和交流中心,包含程序中的數據和地址,運算器執行的中間數據等;外存,是永久存儲數據的設備。
馮機的原理:輸入設備輸入信息,處理信息時,控制器從內存取出並解析指令,控制運算器從內存中取出的數據運算方法,運算的結果給輸出設備。
7.計算機的指令系統、層次結構、性能指標是怎麽樣的?
指令系統:一般指令系統包含兩個部分:操作碼————告訴將要進行哪種運算;地址碼————告訴操作數哪裏取。目的數那裏去等。
程序就是一系列的簡單的指令串構成。
層次結構:硬件,操作系統,應用軟件。
性能指標:數據總線長度(32,64位,每一次接收、處理數據的位數越長)、內存容量和讀取速度(內存越大和數據讀取速度越快)、CPU運算速度(與多個因素有關,時鐘頻率
)等
8. 有關計算機的CPU運算性能方面的拓展————核心程序法。
核心程序法:把應用程序中應用最頻繁的程序作為評價計算機性能的標準程序,成為基準程序Benchmark。常見的Benchmark有整數基準程序等。
第二部分、計算機硬件系統
1.存儲系統中外存、內存、緩存的區別?
存儲系統不同存儲器件容量、讀取速度不一樣。
外存,通常包含硬盤、光盤、U盤等大容量(G——T)的長時間存儲信息的容器;內存。容量小(一般2G——32G)主要是程序執行
期間讀入的數據和指令、處理的中間數據會放在內存中;緩存,也就是我們通常說的內部寄存器,嵌入在CPU中的寄存器,執行程序時將要處理的數據會放在緩存中,容量一般非常小(2M),
讀取速度比內存快,這樣子的優點是從內存讀取數據的速度比CPU處理數據速度慢,造成CPU空置而浪費資源。
2.存儲系統中硬盤、U盤、移動硬盤、固態硬盤SSD、內存、緩存的容量和傳輸數據速率的比較?
USB2.0接口的傳輸數據速率:480Mb/S
3.用C語言或匯編語言寫一段程序測試寄存器、內存、硬盤讀取數據的速率?
4.顯示器中的顯卡性能怎麽看?決定了顯示器的哪些功能?市場上常見的高端顯卡有哪些?
顯卡是連接CPU和顯示器的中間設備,承擔的功能是將主機中的數字信號轉化為模擬信號在顯示器上面顯示。
顯卡性能:顯存、分辨率、色度,決定了顯示器的界面體驗。
常見的顯卡:獨立顯卡:獨立顯卡是具有獨立內存的顯卡,不占用系統內存。
集成顯卡:占用系統內存,原因是集顯沒有獨立處理圖像部件,須要占用CPU資源。
所以獨顯性能更好,常見的高端顯卡有:GT690,HD7850.
5.計算機的系統結構包含哪些?不同系統結構的特點是如何的?
經常使用的系統結構基於並行處理的,包含流水線處理機、並行處理機、機群系統。
機群系統是將多臺高性能的計算機或工作站,通過快速網絡互連的系統。超級計算機的系統結構就是基於機群系統的。
第三部分、計算機軟件系統
1.計算機的操作系統作為系統軟件,有什麽特點?
操作系統,最接近硬件的底層軟件。能夠合理分配硬件資源、提供良好的人機交互界面,使用者在不必知道硬件的物理屬性下就能夠在操作系統上開發和使用軟件。
2. 操作系統的功能有哪些?
從宏觀上來講,操作系統主要提供了資源管理和用戶使用兩個方面的功能。
資源管理主要包含:
進程管理:進程是執行中的程序。
從外存中把程序調入到內存中,而且處理器調用了。直到程序執行結束,進程也停止。
存儲管理:計算機對內存的分配、合理調度等。不同程序執行,索取的數據和指令存放的內存位置不一樣。存儲管理對於位置分配有方法。地址映射。就是在使用高級語言
編程時,所採取的地址稱為邏輯地址,在編譯過程中,存儲管理會將邏輯地址自己主動轉換成物理地址,這個過程稱為地址映射。內存擴充,使用外部存儲作為內存使用。稱為
虛擬內存。
虛擬內存容量跟CPU的地址總線尋址能力有關,20位的地址總線建立的虛擬內存理論上有1Mb。
3.進程和線程的差別和聯系?
簡單來講,一個程序運行,變成進程。一個進程至少包括一個線程;線程與線程之間共享系統資源(CPU和內存)
第四部分、數據庫與信息系統
1.數據與信息的關系?
信息是未知的、具有不確定的信號;對於已知的東西,人們不會獲取到新的信號,便不構成信息。
數據是編碼或者符號來表示信息。
2.數據庫管理系統與文件管理系統在管理數據方面的優勢體如今哪裏?
數據庫管理系統下的數據可以被不同的程序調用,數據共享方便。
文件管理系統下的數據僅僅能被當前目錄的程序調用。
3.數據庫系統的組成部分由哪些?各自特點?
數據庫和數據庫管理系統構成。
數據庫相當於圖書館。
數據庫管理系統相當於書籍存放的規則和位置、以及不同人借書還書的方法。
其包括的內容主要有:定義數據存儲的框架,操作數據
(主要包含增。刪。修。檢索,SQL語言可提供這些功能),用戶接口(其它軟件獲取或者增添數據的接口)
4.數據庫建立的數據模型是如何設定的。關系型數據庫中基本關系運算有哪些?
數據模型是建立在數據結構、數據操作、數據外加定義上的。
數據結構就是定義的數據本身和外在的聯系的表現。操作數據如上;數據外加定義包括數據存儲的合法性。
數據結構決定了數據模型:常見的模型有樹狀、關系型、網狀、面向對象等模型;關系型數據庫是當前主流的數據庫。其基本運算有:集合中的與。或,差等運算。
5.SQL語言經常使用的操作指令有哪些?怎樣使用它們?
SQL語言,Structure Query Language結構化查詢語言。
SQL語言已成為數據庫系統中的標準語言。其基本功能有:定義數據結構、操作數據、查詢數據(核心)。
1.定義數據
在數據庫中須要建立一個對象——表。
創建表的格式:《說明下面keyword所有為大寫 create ——> CREATE, table——>TABLE 》
create table <表名>
( <列名><屬性或字符類型等><數據約束條件>等);
樣例1:創建一個學生信息的表,包括學號,姓名。性別,生日
create table student_Infro
(SNUM char[20]
SName char[10],
Sex char[10],
Birthday char[10])
樣例2:創建一個完整的表,包括約束性條件
約束條件完整的格式例如以下:
[CONSTRAINT 條件名]<約束條件>
條件名:系統也可自己主動給出。
約束條件通常有:
空與非空: NULL NOT NULL。
默認值:DEFAULT
值唯一:UNIQUE
主鍵:PRIMARY KEY
外鍵:FOREIGN KEY
create table student_Infro
(
SNUM char(10) CONSTRAINT 10num PRIMARY KEY,
SName char(10) CONSTRAINT Less4 UNIQUE,
Sex char(10) CONSTRAINT 2kind DEFULT ‘男‘,
Birthday char(10) CONSTRAINT ymd NOT NULL)
改動表:
常見格式例如以下:
ALTER TABLE <表名>
添加屬性列:<ADD 列名 屬性也就是數據類型[約束條件]>
改動屬性列及其約束條件:<ALTER COLUMU 列名 屬性> //改動的列空間不能超過原有,原來若定義為NULL,不能改動為NOT NULL
刪除屬性列:<DROP COLUMN 列名 >或者刪除約束條件<DROP CONSTRAINT 約束條件>
樣例4
向樣例1中加入列——院系
ALTER table student_table
ADD departure char(5)
改動樣例1中的名字列增添到20字符
ALTER table student_table
ALTER COLUMN SName char(20)
刪除樣例1中的生日列
ALTER table student_Infro
DROP COLUMN Birthday
刪除樣例2中Sex中的默認條件男
ALTER table student_Infro
DROP CONSTRAINT DEFAULT ‘男‘
刪除表:
DROP TABLE <表名>
2.查詢數據庫
查詢數據是建立DBMS的核心。
SQL語言主要提供了例如以下方法查詢:
SELECT <目標列1><目標列二><...>
FROM <table名>
WHERE <條件表達式>
GROUP BY/ORDER BY:依照降序或升序排列
樣例5:從樣例1中的表中選出性別是男的學生的學號和姓名
SELECT SNum,SName
FROM student_Infro
WHERE Sex=‘男‘
假設數據庫已經建立。查詢結果例如以下所看到的:
————————
SNum | SName
————————
2010 | 張三
————————
2011 | 李四
————————
對於SELECT:假設想把表中的信息所有查詢。也能夠將列名所有寫出,也能夠簡單用"*"來表示列名
比如:SELECT * FROM student_Infro
對於FROM:假設從不同的表中篩選,則須要對這些表進行運算。
對於WHERE:篩選條件。能夠依據條件要求作出不同的運算,常見的比較運算(> < >= <= !=)、邏輯運算( NOT AND OR)、確定範圍(BETWEEN AND ,NOT BETWEEN AND)、
包含集合(IN NOT IN)、字符配對(LIKE NOT LIKE)等
樣例5:選出年齡大於20小於24歲的學生學號、姓名
SELECT SNUM,SName
FROM student_Infro
WHERE (age > 20)AND(age <24)
WHERE Score BETWEEN 60 AND 80
WHERE SName LIKE ‘_ _ 梅%‘
加入數據庫:
格式:INSERT INTO VALUES
比如一個新學生。包含學號,姓名,性別。院系
INSERT
INTO student_Infro (SNum,SName,Sex。Departure)
VALUES (SNum=‘2016‘,SName=‘張五‘,Sex=‘女‘,Departure=‘CIE‘)
刪除數據庫:表示刪除WHERE所在屬性的整行所有刪掉
格式:
DELETE FROM WHERE
比如:刪除同學張三的信息
DELETE
FROM student_Infro
WHERE SName=‘張三‘
改動數據庫:
格式例如以下:
UPDATE
SET <列名1>=<表達式>。<><>
[WHERE] <條件>
改動所有行:
UPDATE SET Departure=‘CIE‘ //將所有學生所在的系所有設為CIE
改動部分行:
UPDATE SET Departure=‘CIE‘ WHERE SName=‘張三‘ //將張三所在的系設為CIE
6.ADD和INSERT使用方法的區別?DROP和DELETE的區別
ADD和DROP是對於數據結構的定義而言,改動的都是表的列。
INSERT和DELETE是對於數據結構的應用而言。改動的都是表的行。
7.經常使用的DBMS有哪些?
Oracle:甲骨文數據庫,大型關系型數據庫。主要是數據高可靠性。
MySQL:全然免費的執行最快的關系型數據庫
ACCESS:微軟開發的桌面數據庫
計算機基礎之計算機硬件軟件數據結構