版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
3.3程序設計語言及其處理系統(tǒng)3.3.1程序設計語言分類3.3.2程序設計語言的數(shù)據(jù)成分和控制成分3.3.3程序設計語言處理系統(tǒng)3.3.4常用程序設計語言介紹什么是程序設計語言?什么是程序?告訴計算機做什么和如何做的一組指令.什么是程序設計語言?編寫程序的工具.是由人使用但計算機
可以理解并能執(zhí)行的
一種語言.用于人與計算機
之間的通信.計算機硬件僅僅知道0和1有問題需要計算機解決的人程序設計語言3.3.1程序設計語言分類△機器語言匯編語言高級程序設計語言B87F01BB210203D8B81F042BC3(計算1055-(383+545)的5條機器指令)機器語言
√機器語言就是計算機的指令系統(tǒng)不同類型、不同型號的計算機,其機器語言不同用機器語言編程序,也就是直接使用二進制(八進制、十六進制)代碼編寫程序?!虄?yōu)點:可以直接被計算機執(zhí)行√缺點:記不住、難理解、效率低、不易維護不同的機器語言程序,相互不兼容現(xiàn)在已不直接用機器語言編制程序!操作碼操作數(shù)(或操作數(shù)的地址)1條機器指令操作數(shù)地址操作碼例:機器語言程序在MIPS計算機上求最大公約數(shù)(GCD)的機器程序(16進制表示)MIPS計算機的每條機器指令均為32個二進位,用8個16進制數(shù)表示MIPS的意思是“無內(nèi)部互鎖流水級的微處理器”(Microprocessorwithoutinterlockedpipedstages),
Mips是計算機指令系統(tǒng)的一種.匯編語言√用助記符號來表示機器指令中的操作符與操作數(shù)√優(yōu)點:操作數(shù)直接使用十進制程序相對容易理解√缺點:大型程序難以開發(fā)依賴于具體計算機將383傳送到AX寄存器將545傳送到BX寄存器將BX內(nèi)容加AX內(nèi)容,結果在BX中將1055傳送到AX寄存器將AX內(nèi)容減BX內(nèi)容,結果在AX寄存器中B87F01BB210203D8B81F042BC3(計算1055-(383+545)的5條機器指令)機器語言程序對應的匯編語言程序MOVAX,383MOVBX,545ADDBX,AXMOVAX,1055SUBAX,BX匯編語言程序高級程序設計語言目的:克服匯編語言的缺陷,提高編程和維護的效率△特點:接近人們?nèi)粘J褂玫淖匀徽Z言(主要是英語)容易理解、記憶和使用可在不同計算機上通用對使用的符號、詞匯、語法和語義等各種語言成分都有嚴格的規(guī)定意義:使程序設計的難度降低,導致了計算機的發(fā)展進入新的階段MOVAX383MOVBX545ADDBXAXMOVAX1055SUBAXBX匯編語言程序S=1055-(383+545)3.3.2程序設計語言的成分數(shù)據(jù)成分控制成分程序設計語言的基本成分高級語言種類千差萬別,但是其基本成分都可歸納為四種△
:數(shù)據(jù)成分運算成分控制成分傳輸成分:用以描述程序中的數(shù)據(jù)傳輸操作main(){int
a,b,c;
scanf("%d%d",&a,&b);
if(a>b)c=a-b;elsec=b-a;
printf(”c=%d\n",c);}數(shù)據(jù)成分:△描述程序所涉及的對象數(shù)據(jù)是客觀事物在計算機內(nèi)的(格式化)表示,是程序所操作和處理的對象程序中的數(shù)據(jù)通常應該先說明、后使用數(shù)據(jù)說明的內(nèi)容包括:變量還是常量它們的標識符(符號表示)它們的數(shù)據(jù)類型······main(){int
a,b,sum;a=10;b=24;sum=a+b;
printf(”sum=%d\n",sum);}數(shù)據(jù)類型基本類型復合類型算術類型字符類型char邏輯類型bool整型int/long[int]實型單精度float雙精度double數(shù)組、結構指針、集合枚舉用戶定義類型C語言中的數(shù)據(jù)類型數(shù)據(jù)類型:用于刻畫數(shù)據(jù)的特性——數(shù)據(jù)的取值范圍和允許對它進行哪些操作?;緮?shù)據(jù)類型是大部分CPU能直接支持的數(shù)據(jù)類型,也稱為內(nèi)部類型,是不可分解的。復合數(shù)據(jù)類型:是通過類型構造符把1個或多個更簡單的類型復合而成的數(shù)據(jù)類型intI;int*p=&i;3指針變量p變量i什么是數(shù)據(jù)類型(datatype)?算術運算符:+-*/%++--關系運算符:<<===>>=!=邏輯運算符:!&&||位運算符:<<>>~|^&賦值運算符:=及其擴展條件運算符:?:逗號運算符:,指針運算符:*&求字節(jié)數(shù):sizeof強制類型轉換:(類型)分量運算符:.->下標運算符:[]其它:()-運算成分:△描述程序中所包含的運算“表達式”由變量、常量、函數(shù)、運算符和括號組成
,它用來計算一個值。例如,sin(45*3.14/180)+(exp(10)+log(10))/sqr(x+y+1)
用來計算下面公式的值:控制成分:控制程序中所含語句的執(zhí)行順序△控制成分用來提供一種基本框架,在此基本框架的支持下,將數(shù)據(jù)和對數(shù)據(jù)的運算組合成程序△三種控制結構:由一組順序執(zhí)行的計算操作(或語句)組成順序結構AB由一個條件(P)和兩個供選擇的操作(或語句)A和B組成PAB真假條件選擇結構由一個條件(P)和一個供重復執(zhí)行的操作(或語句)A組成PA假真重復結構條件選擇結構舉例main(){int
a,b,c;
scanf("%d%d",&a,&b);
if(a>b)c=a-b;elsec=b-a;
printf(”c=%d\n",c);}If(P)A;elseB重復結構舉例1、while(P)A2、doAwhile(P)main(){
int
i,sum=0;i=1;
while(i<=100){sum=sum+i;i++;}
printf(”%d\n",sum);}!求1-100的累加和重復結構舉例for(P1;P2;P3)A;等價于:P1;while(P2){A;P3}main(){
int
i,sum=0;
for(i=1;i<=100;i++)sum=sum+i;
printf(”%d\n",sum);}!求1-100的累加和main(){
int
i,sum=0;i=1;
while(i<=100){sum=sum+i;i++;}
printf(”%d\n",sum);}int
max(int
x,inty){intz;if(x>=y)z=x;elsez=y;return(z);}函數(shù)max的定義函數(shù)的返回值例:找兩數(shù)中較大的數(shù)(函數(shù)調用)main(){inta,b,c;
scanf("%d%d",&a,&b);c=max(a,b);
printf(”%d\n",c);}主函數(shù)調用函數(shù)max進行計算變量說明輸入語句輸出語句3.3.3程序設計語言
處理系統(tǒng)語言處理系統(tǒng)△語言處理系統(tǒng)的作用:把用程序語言(包括匯編語言和高級語言)編寫的各種程序變換成可在計算機上執(zhí)行的程序,或其他中間形式,或最終的計算結果,?!髡Z言處理系統(tǒng)包括:翻譯程序正文編輯程序:用于建立和修改源程序文件聯(lián)接編輯程序:將多個分別編譯或匯編過的目標程序和庫文件進行組合裝入程序:將目標程序裝入內(nèi)存并啟動執(zhí)行程序模塊n源程序n目標程序n可執(zhí)行目標程序程序模塊1……正文編輯源程序1……編譯目標程序1……聯(lián)接編輯裝入執(zhí)行結果庫文件程序設計語言的翻譯程序把甲語言編寫的程序翻譯為等價的乙語言編寫的程序。其中甲語言程序稱為源程序,乙語言程序稱為目標程序翻譯程序源程序目標程序△常用的有下列幾種:匯編程序(匯編器)匯編語言源程序機器語言目標程序編譯程序(編譯器)高級語言源程序機器語言或匯編語言目標程序解釋程序(解釋器)高級語言源程序邊解釋邊執(zhí)行,不產(chǎn)生目標程序△編譯程序與解釋程序的區(qū)別解釋:解釋器直接解釋并且執(zhí)行源語言程序,不產(chǎn)生目標程序(相當于“口譯”)編譯:把源程序編譯為機器語言目標程序后,再由計算機運行(相當于“筆譯”)源程序目標程序編譯器計算機編譯方式計算機源程序解釋器解釋方式BASIC、VisualBasic、VBScript、Java、JavaScript等都是解釋執(zhí)行的語言C、C++等都是需要編譯的語言3.3.4常用程序設計語言
介紹高級程序設計語言的發(fā)展50年代:Fortran,ALGOL60年代:COBOL語言70年代:Pascal語言,C語言,BASIC語言80年代:Ada語言,PROLOG語言,LISP語言90年代起:面向對象語言C++、JAVA、C#等FORTRAN語言△
FORTRAN是FORmula
TRANslation
(公式翻譯)的縮寫詞,它是一種主要用于數(shù)值計算的面向過程的程序設計語言。FORTRAN語言的特點是接近數(shù)學公式,簡單易用;程序結構化(IF、DO),也能應用于非數(shù)值運算功能。目前最新的國際標準是FORTRAN2003BASIC和VisualBasic語言△
BASIC”初學者通用符號指令代碼”,簡單易學VisualBASIC(VB)語言是微軟公司基于BASIC發(fā)展而來的一種程序設計語言,特點是:是一種可視化的、面向對象的、采用事件驅動方式的結構化高級程序設計語言具有高效率、簡單易學及功能強大的特點可以高效、快速地開發(fā)Windows環(huán)境下功能強大、圖形界面豐富的應用軟件Java語言△
由SUNMicrosystem公司于1995年發(fā)布的一種面向對象的、用于網(wǎng)絡環(huán)境的程序設計語言基本特征是:適用于網(wǎng)絡分布環(huán)境具有一定的平臺獨立性安全性和穩(wěn)定性好Java語言受到各種應用領域的重視,取得快速的發(fā)展,在Internet上已推出了用Java語言編寫的很多應用程序C語言和C++語言△
C語言是1972~1973年間由AT&T公司Bell實驗室開發(fā)而成C語言兼有高級語言的優(yōu)點和匯編語言的效率,有效地處理了簡潔性和實用性、可移植性和高效性之間的矛盾C++語言以C語言為基礎發(fā)展而成,既有數(shù)據(jù)抽象和面向對象能力,運行性能高,又能與C語言兼容,因而C++語言迅速流行,成為當前面向對象程序設計的主流語言ALGOL(ALGOrithmicLanguage)語言:分別于1960年和1962年發(fā)表的ALGOL60報告及修改報告,已成為程序設計語言發(fā)展史上的里程碑,不但開拓了程序設計語言的研究領域,也為后來的軟件自動化和軟件可靠性研究奠定了基礎。ALGOL語言的語法和語義均有嚴格的描述。它的語法描述采用了特定的巴科斯形式化體系(BNF),結構清晰,理論嚴謹。在ALGOL語言基礎上發(fā)展的ALGOL語言簇包括ALGOL68、Simula、PASCAL等。PASCAL語言:具有豐富的數(shù)據(jù)類型和靈活的控制結構,編譯效率高,強調程序的可靠性和易于驗證性,被稱為第一個結構化程序設計語言。PASCAL語言適用于數(shù)據(jù)處理、數(shù)值計算和系統(tǒng)軟件開發(fā),并曾經(jīng)成為大學程序設計教學的優(yōu)選語言。ALGOL語言PASCAL語言除了以上介紹的幾種程序語言外,有影響的程序語言還有:LISP語言:適用于符號操作和表處理,主要用于人工智能領域PROLOG語言:一種邏輯式編程語言,主要用于人工智能領域Ada語言:類似于PASCAL語言,且易于控制并行任務和處理異常
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年大連市皮膚病醫(yī)院招聘合同制工作人員36人備考題庫及一套答案詳解
- 2025年民生銀行蘭州分行社會招聘備考題庫有答案詳解
- 2024年茂名化州市公安局招聘警務輔助人員考試真題
- 2025年日喀則市江孜縣人社局關于公開招聘兩名勞動保障監(jiān)察執(zhí)法輔助人員的備考題庫及1套完整答案詳解
- 銀行業(yè)年度策略:聚焦紅利與復蘇雙主線
- java課程設計模擬畫圖程序
- 2025江蘇南京醫(yī)科大學第四附屬醫(yī)院(南京市浦口醫(yī)院)招聘高層次人才5人考試重點題庫及答案解析
- 必修二數(shù)學課程設計
- 2026云上(貴州)數(shù)據(jù)開發(fā)有限公司第一次社會招聘18人考試核心試題及答案解析
- 2025新疆日喀則市消防救援支隊、日喀則市人力資源和社會保障局招聘政府專職消防員21人考試核心題庫及答案解析
- 上海財經(jīng)大學2026年輔導員及其他非教學科研崗位人員招聘備考題庫參考答案詳解
- 2025-2026小學部編版語文四年級上冊教學工作總結
- 納稅籌劃課件教學
- 2025成都農(nóng)商銀行產(chǎn)業(yè)金融崗社會招聘考試筆試參考題庫及答案解析
- DB32∕T 2914-2025 危險場所電氣防爆安全檢查規(guī)范
- 2026成方金融科技有限公司校園招聘34人考試筆試參考題庫及答案解析
- 基于BIM技術的大學宿舍施工組織設計及智慧工地管理
- 鄉(xiāng)鎮(zhèn)綜治維穩(wěn)課件
- 中華人民共和國簡史學習通超星課后章節(jié)答案期末考試題庫2023年
- 建筑施工事故案例PPT
- 核對稿300單元分析響應
評論
0/150
提交評論