C语言学习C程序设计——程序设计基础
時至今日,計算機已經深入我們的日常生活之中。了解計算機已經成為我們的基本素養之一。今日我們就來了解一下計算機的組成。
一、初識計算機
一個完整的計算機(計算機系統)是由硬件系統和軟件系統組成。
顧名思義,硬件系統就是計算機的物質基礎,軟件系統就是計算機的精神基礎。硬件系統就像人的肉身,軟件系統就像人的精神。二者相輔相成,不可或缺。
我們最為關心的無非就是計算機的功能,說起來計算機的功能更大程度上是由計算機所安裝的軟件系統決定的,而所有的軟件都是用計算機程序語言編寫的。
今天我們要了解的就是計算機軟件方面的知識。
二、計算機系統和工作原理
首先我們來了解一下計算機系統。
2.1計算機系統的組成
現代計算機的體系結構和工作原理是由馮·諾依曼提出的,因此也叫馮·諾依曼計算機。
下面我們先來了解一下什么是馮·諾依曼計算機以及它的特點。
馮·諾依曼計算機的組成:計算機由5個部分組成:運算器、控制器、存儲器、輸入設備、輸出設備。
計算機的結構示意圖如下:
馮·諾依曼計算機的特點:采用“存儲程序”思想,程序和數據都用二進制的形式表示,以相同的方式存放在存儲器中,按地址尋訪。
下面我們對上述關鍵詞進行解釋:
運算器:
又稱為算術邏輯單元ALU。
主要功能:計算機進行算術運算(加減乘除等等)和邏輯運算(與或非等等)的地方。
組成:它是由一個加法器、幾個寄存器和一些控制線路組成的。
運算器只可以進行簡單的基本運算,通常復雜運算都是由簡單的基本運算一步步運算實現。因此想實現復雜運算,就需要運算器多次運算。然而運算器的運算速度非???#xff0c;使得計算機擁有高速處理信息的能力。
控制器:
主要功能:指揮計算機的各個部件按照計算機指令的要求協調工作。
組成:控制器是由程序計算器PC、指令寄存器IR、指令譯碼器ID和時序控制電路等等組成。
中央處理器CPU是計算機中最為重要的一個部件,它是由運算器和控制器組成
存儲器:
主要功能:計算用來存放數據的記憶裝置。
組成:內存儲器(內存或主存)和外存儲器。
輸入設備:
主要功能:用來接受用戶輸入程序的信息和數據,并將它們轉化為二進制形式的數據并存放到內存中,以便計算機處理。
常見的輸入設備:鍵盤、鼠標、觸摸屏、手寫筆等等。
輸出設備:
主要功能:將存放在內存中的計算機處理結果以人們能夠識別的形式表示出來。
常見的輸出設備:顯示器、打印機等等。
存儲程序思想:
執行程序前,需要將程序包含的指令和數據先送到內部存儲器,一旦程序啟動執行,計算機必須能夠在沒有操作人員的干預下自動地完成逐條指令的取出和執行任務。
接下來我們來了解一下指令與程序
2.2指令與程序
1.指令
定義:指令是計算機執行某種操作的機器命令,它可以被計算機硬件直接識別和執行。
組成:計算機指令常用二進制形式表示,一條指令由操作碼和操作數組成。其中操作碼指示該指令要完成的具體操作,例如取數、加法、位移等等。操作碼指明操作對象的數據或所在的內存單元。
劃分:單操作數指令,雙操作數指令,三操作數指令和無操作數指令。(按操作數的個數劃分)
一臺計算機所有指令的集合稱為指令系統。不同類型的計算機的指令系統是不同的。但是通常會有這幾個功能的指令:數據傳送指令、數據處理指令、程序控制指令、輸入輸出指令、硬件管理指令、其他指令。
2.計算機的工作原理
計算機的工作實質就是快速執行指令的過程。
指令的執行過程分為3個部分:(1)取指令、(2)分析指令、(3)執行指令。
取指令:按照程序計數器中的地址,從內存中取出指令送到指令寄存器中。
分析指令:對指令寄存器中存放的指令進行分析,由指令譯碼器對操作碼進行譯碼,轉化成相應的控制信號并確定操作數地址。
執行指令:由執行部件完成該指令所要求的操作,例如執行加法操作,將寄存器的值與累加器的值相加,結果依舊放在累加器中。
為了提高效率,現代計算機通常使用指令流水線技術來并行執行指令。
顯然,流水線方式的控制是復雜得,硬件成本較高。
3.程序
計算機程序是指完成一定功能的指令的有序集合。
運行一個程序的過程就是依次執行每條指令的過程,一條指令執行完成后,為執行下一條指令做好準備,即形成下一條指令地址,繼續執行,直到遇到結束程序的指令為止。
程序執行的過程如下:
計算機程序是數據流和控制流的工作過程。
下面我們來進一步了解一下什么是數據流和控制流:
數據流:是指對數據形式的表示和描述,即程序所使用數據的數據結構和組織形式。
控制流:是對數據所進行操作的描述,即指定操作的步驟和方法,稱為算法。
所以有:
程序設計=算法+數據結構+程序設計方法
4.軟件
定義:軟件是指程序、程序運行所需要的數據以及開發,使用和維護這些程序所需要的文檔的集合。
計算機軟件分類:系統軟件和應用軟件
系統軟件:是指控制計算機的運行,管理計算機的各種資源,并為應用軟件提供支持和服務的一類軟件,通常包括操作系統,語言處理程序和各種實用程序。
應用軟件:是指利用計算機的軟、硬件資源為某一專門的應用目的而開發的軟件
好了,今天的學習就到這里。我們下期見!
總結
以上是生活随笔為你收集整理的C语言学习C程序设计——程序设计基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对c语言程序设计的心得体会,C语言程序设
- 下一篇: C语言程序设计详细版 (学习笔记1) 看