国产aaaa级全身裸体精油片_337p人体粉嫩久久久红粉影视_一区中文字幕在线观看_国产亚洲精品一区二区_欧美裸体男粗大1609_午夜亚洲激情电影av_黄色小说入口_日本精品久久久久中文字幕_少妇思春三a级_亚洲视频自拍偷拍

源程序過程分析與數(shù)據(jù)分析 源程序過程分析與數(shù)據(jù)分析

源程序過程分析與數(shù)據(jù)分析

  • 期刊名字:電腦編程技巧與維護
  • 文件大?。?78kb
  • 論文作者:林榕慧
  • 作者單位:仰恩大學(xué)計算機與信息學(xué)院
  • 更新時間:2020-09-25
  • 下載次數(shù):
論文簡介

實用第一/智慧密集源程序過程分析與數(shù)據(jù)分析林榕慧(仰恩大學(xué)計算機與信息學(xué)院,泉州福建362000)摘要: 源程序分析的實質(zhì)是程序的過程分析和數(shù)據(jù)分析,目的是提供一種程序閱讀的方法,實現(xiàn)程序理解。方法是詳細分析復(fù)雜程序的執(zhí)行過程,關(guān)鍵語句的結(jié)構(gòu)與功能,建立變量、數(shù)組、二維數(shù)組或者輔助數(shù)組3個層次的程序數(shù)據(jù)的處理架構(gòu),并且用數(shù)據(jù)行和一維數(shù)據(jù)集合表示。源程序分析的5個規(guī)范使過程分析和數(shù)據(jù)分析有章可循。程序的功能分析是更進一步的分析方法,發(fā)現(xiàn)源程序的具有不可分割性的功能塊,以此建立程序的功能結(jié)構(gòu),掌握高級編程方法。關(guān)鍵詞:過程分析與數(shù)據(jù)分析;程序數(shù)據(jù);數(shù)組;輔助數(shù)組;原子功能if(b>c) {t=b;b=c;c=t;//比較語句31概述print(%5.2f,%5.2f,%5.2f ,a,b,c);}源程序分析與現(xiàn)有的程序分析不同。現(xiàn)有程序分析分為靜{a,b,c}元素的組合(a,b) , (a,c) , (b,e) 是全部有效的對比態(tài)分析和動態(tài)分析兩類,作用是(1)發(fā)現(xiàn)程序語句的錯誤;數(shù),經(jīng)過3次比較和交換,得到三元組。(2)精煉程序流程圖,例如:路徑分析; (3) 編譯,可稱為數(shù)據(jù)分析與過程分析,如表1所示。代碼分析; (4) 代碼查詢,分析程序的結(jié)構(gòu)和元素值,當(dāng)作表1比較 3個數(shù)程序的數(shù)據(jù)分析與過程分析中間結(jié)果供查詢,屬于動態(tài)分析。此外,動態(tài)分析還包括按代變量對關(guān)鍵語句(3個if語句)目標數(shù)據(jù):碼段執(zhí)行,輸出變量值等。(m1.m2)a>ba>eb>cMinSecond源程序分析目的是用數(shù)據(jù)分析和過程分析的方法,使人們(a,b)a能很好地實現(xiàn)“程序理解",程序員則能夠發(fā)現(xiàn)關(guān)鍵語句、程序ae;數(shù)據(jù)處理架構(gòu)、程序的主要結(jié)構(gòu)。過程分析選擇關(guān)鍵語句,記,e)b錄程序數(shù)據(jù)在程序執(zhí)行過程中的完整存在形式。程序數(shù)據(jù)有3個層次:變量、數(shù)組、二維數(shù)組或者存儲數(shù)組與輔助數(shù)組的組程序2:在[100,200]區(qū)間選擇素數(shù)合。數(shù)據(jù)分析在點、一維、二維程序數(shù)據(jù)空間的標識遵循相同main(){int m,k,n=0;的規(guī)則。1. for(m= 101;m<200;m=m+2)2源程序數(shù)據(jù)分析與過程分析2. { k=sqr(m); :3.for(i=2;i<=k;i++)源程序分析技術(shù)以數(shù)據(jù)驅(qū)動為最基本特征。程序處理的數(shù)4.if(m%i==0) break;據(jù)有變量、數(shù)組、矩陣(= 維數(shù)組),稱為程序數(shù)據(jù)。稀疏矩陣//第2層for循環(huán)的存儲結(jié)構(gòu)用存儲數(shù)組data []與輔助數(shù)組的組合表示,輔助5.if(>=k+1){ printf(" %d" m); n=n+1;數(shù)組cpot[、num []、rpos 0表示稀疏矩陣的層次結(jié)構(gòu)。在這if(n% 10==0)? pritf(" ");}3個數(shù)據(jù)層次的基礎(chǔ)上,展開程序數(shù)據(jù)分析和過程分析的進8. }/第一層for循環(huán)結(jié)束化,形成5個初步的規(guī)范形式。9. printf(" ");2.1 程序數(shù)據(jù)是變量t10.}這一類程序大致上是實現(xiàn)在- -定條件下對變量的選擇。程序2是兩層循環(huán)語句構(gòu)成。第一層for循環(huán)判斷程序變程序1:比較3個數(shù)的大小作者簡介:林榕慧(1973-), 碩士,教師,研究方向:高等數(shù)main){float a,b,c,t;學(xué)計算文法、功能式程序設(shè)計方法,英語結(jié)構(gòu)文法、分布與緊scanf(" %f, %f, %f" ,&a,&b,&c);致并存的高性能計算系統(tǒng)、全功能結(jié)點與分層調(diào)度方法、數(shù)字if(a>b) {t=a;a=b;b=;/比較語句1電路系統(tǒng)設(shè)計的數(shù)理決極理入出笛tn網(wǎng)絡(luò)與通信數(shù)據(jù)高速同if(a>c) {t=a;a=c;=://比較語句2步傳輸網(wǎng)。中國煤化工YHCNMHG40電腦鵝核萬與維護動2014. 11...AABASE量m是否在100到200之間,循環(huán)邊界[01,199]。 第二層循程序3部分數(shù)組逆置環(huán)判斷每--個數(shù)m是不是素數(shù)。設(shè)置第二層循環(huán)依據(jù)素數(shù)的void resort(int arraylI,int where,int amount)數(shù)學(xué)算法,循環(huán)的判斷范圍是[2, sqrt (m)]。{ int *p1,*p2,temp;p1=&array[where-1]; /p1 是首指針過程分析與數(shù)據(jù)分析如表2所示。p2=&larraylwhere- 2+amount;表2求素數(shù)程序 的數(shù)據(jù)分析與過程分析//p2是尾指針for(;p1<8arraylwhere-1]+amount/2;p1++;p2--)程序數(shù)據(jù)第-層循環(huán)第二層循環(huán)循環(huán)結(jié)果輸出格式//用首尾指針的方式,實現(xiàn)swap。mm<200[2sqnt (m)]i>=k+1n%10==0{temp=*p1;100*p1=*p2;1*p2=temp;103p1=&array [where-1], 是首指針,p2=&array [where -2+200amount],是尾指針。用首尾指針的方式,實現(xiàn)swap。輸人數(shù)據(jù)的元素:從表2可知:678 910111213 1415(1)程序2的兩層循環(huán)語句用數(shù)據(jù)表的2、3兩列表示。第where=6;二個循環(huán)語句的循環(huán)體有條件語句,因此需要設(shè)置循環(huán)語句的amount=10;值,為0表示沒有在[2sqnt (m)的數(shù)被整除,則m是素數(shù);為根據(jù)規(guī)范形式2,數(shù)組元素6~11排列在第一列,指針1表示m不是素數(shù)。第4列i>=k+1是判斷第二個循環(huán)的結(jié)果,*p1= [6,11] ,*p2= [15,10] 表示交換操作,將數(shù)組元素15~10不可省略。n%10==0僅僅設(shè)置輸出格式,可選。對應(yīng)排列在第4列。第-行的p1, p2表示指針初始值。p1++,準定義1循環(huán)語句的值p2--另起一行,表示指針的工作方法。循環(huán)語句用條件表達式在源程序數(shù)據(jù)分析與過程分析中,邏輯值{0,1} 表示循環(huán)表示,必須列出,如表3所示。語句的值,為1表示循環(huán)語句得到與目標相同的結(jié)果,為0表表3部分數(shù)組逆置的過程 分析和數(shù)據(jù)分析示沒有得到目標結(jié)果。用循環(huán)語句的上下兩個邊界作為所在列的判斷標志。操作數(shù)1雙操作數(shù)操作操作數(shù)2循環(huán)停止的 條件(2) 每-一個程序變量m對應(yīng)一個數(shù)據(jù)行。若只看數(shù)據(jù)行,PIpI<&array [5] +5當(dāng)m=101時,有數(shù)據(jù)集合{m=101,1,0,1,0。PI=&array [5] P2=&array [14]1:規(guī)范形式1根據(jù)數(shù)據(jù)驅(qū)動的原則,將變量的全部值設(shè)置P1++p2-在第一列。變量的每-一個值有一個數(shù)據(jù)行,表示程序目標功能PI=&aray [6] p2=larray [13]| 14的- -次執(zhí)行。數(shù)據(jù)行包括變量值、關(guān)鍵語句。數(shù)據(jù)行的值用數(shù)PI=array [7] p2-8aray [12]| 13據(jù)集合表示。程序目標功能的一次執(zhí)行,用以實現(xiàn)編程的目標,可用數(shù)Pl=&aray [8] p2-=&aray [11]| 12據(jù)行標識。例如:求素數(shù)程序功能的- -次執(zhí)行,能判斷- -個數(shù)P=&array [9] p2-array [10] 1m是否符合素數(shù)的定義。11PI=&array [10] p2=&array [9](3)源程序數(shù)據(jù)分析與過程分析對條件語句的路徑選擇并不重視,重視的是程序目標功能的一次執(zhí)行的完整表示,與現(xiàn)main)程序4簡單選擇排序有程序分析的條件語句路徑分析不同。int al,jk,x;2.2程序數(shù)據(jù)是數(shù)組printf('Input 8 numbers: ");數(shù)組的操作有(1) 數(shù)組元素的交換,用在數(shù)組逆置運算、for(i=1;i<9;i++)簡單選擇排序等程序。(2) 數(shù)組遍歷。(3) 有選擇地對元素scanf("%d",&ali);printf(" ");用表達式賦值。for(i=1;i<8;++)規(guī)范形式2當(dāng)程序數(shù)據(jù)是數(shù)組元素時,將數(shù)組元素構(gòu)成{ k=i;第- -列。 若程序的操作是雙操作數(shù),則將數(shù)組元素分成兩列,for(j=i+ 1中國煤化工另一列放在操作語句的右邊,與第-列對應(yīng)。/比較ali-MHCNM HG2014. 11電腦納技巧與維護41)實用第一/智慧密集if(a[j]MAXSIZE) returm ERROR;16. Q.data[Q.tu]=(arow,col,templcoll);的一個值,因此遵守了一個數(shù)組元素只有一-個數(shù)據(jù)行, - -個數(shù)}/if據(jù)行標識程序目標功能的一次執(zhí)行的原則。}//for arrow第一列的i表示比較次數(shù),標識第- -層循環(huán)語句for (i=1;i<9;i++),而且是數(shù)組的下標。它的右邊對應(yīng)的輸人數(shù)組元素,是每一次比較的驅(qū)動元素。在選擇排序過程中,輸人數(shù)組因交}//MultSMatrix換發(fā)生變更,第三列標識新的輸人數(shù)組的元素a [i]。a [i] ~a稀疏矩陣的并行乘法算法關(guān)鍵是游標之間的關(guān)系,用3個[8]表示第二層循環(huán)語句的比較范圍。k記錄最小值的下標,表達式說明,如表5所示。第7列表示a問和a[k]交換,正確的a [k]保存在存儲單元表5稀疏矩陣并行乘法的數(shù)據(jù)分析和過程分析a[i]中。矩陣M的行矩陣N的行計算線索四元組計算結(jié)果目標元素規(guī)范形式3在輸出單元素的數(shù)組程序中,每一個數(shù)組元M行數(shù)組M.data [.]N.data [..4] (rowp.prow.w Clemp (co]Q.daa [1.].素對應(yīng)- -個數(shù)據(jù)行,用數(shù)據(jù)行的一個項表示產(chǎn)生目標數(shù)據(jù)的主可.3). ( 1.1.1.1)(1-51)9.2)(.2.)"[2] =3*2+0 |[1]= (1.2.6)結(jié)構(gòu)循環(huán),而且循環(huán)中的全部數(shù)據(jù)元素排列在單個數(shù)據(jù)集中。(2].-1) (1] ,1)(23.2.2川=-1 [2] = (.1.-1)程序4的{k,a [k])} 表示第二層循環(huán)的數(shù)據(jù)集合,而第二[1] ,2)_(3.4.1,1)[2]=2*2 [31 = (3.2.4)層循環(huán)是選擇排序程序的主結(jié)構(gòu)循環(huán)。中國煤化工規(guī)范形式1.1數(shù)組的元素等價-個變量的值,當(dāng)輸入數(shù)組元brow=MYHCNMHG2014.11電腦體疆技巧與維護氣實用第一/智慧密集} FRAME_ QUEUE ;定顯存地址,如果已知顯存地址,也可以將該地址直接作為寫4.2播放器工作機制顯存數(shù)據(jù)的起始地址來使用。播放器軟件啟動后,首先初始化各種數(shù)據(jù)結(jié)構(gòu),然后分別(2)控制區(qū)啟動播放器任務(wù)和解碼器任務(wù)。播放器任務(wù)和解碼器任務(wù)通過點擊“播放"按鈕后,先獲得視頻文件的大小信息,再清信號量同步??詹シ牌鞯木彌_區(qū),然后向解碼器發(fā)送解碼信號量。初始化工作包括:創(chuàng)建信號量,填充播放器數(shù)據(jù)結(jié)構(gòu),初點擊“暫停”按鈕后,將播放器狀態(tài)設(shè)置為暫停狀態(tài),使始化幀隊列,設(shè)置輔助時鐘定時器等。播放器暫停向緩存輸出幀圖像,同時阻塞解碼器解碼。播放器任務(wù)的工作機制為:等待輔助時鐘釋放信號量,點擊“停止”按鈕后,將播放器狀態(tài)設(shè)置為停止狀態(tài),然然后從幀隊列中獲取幀,并在屏幕上顯示釋放信號量給解后銷毀播放器的幀緩沖區(qū)。碼器。點擊“快放”則減小向顯卡緩存輸出幀圖像的時間間隔,4.3播放器界面點擊“慢放”則增大向顯卡緩存輸出幀圖像的時間間隔,點擊播放器包括視頻顯示區(qū)和控制區(qū)。如圖1所示?!盎謴?fù)正?!卑粹o后,則進行正常播放。通過拖動“播放進度條”亮塊,可以實現(xiàn)視頻的定位播放。5結(jié)語通過將通用的移植MPEG4視頻解碼源碼移植到VxWorks的方法實現(xiàn)了對Mpeg4視頻的解碼;通過C語言編程實現(xiàn)了播放器功能函數(shù)和數(shù)據(jù)結(jié)構(gòu)的設(shè)計,并在VxWorks自帶的WindMl的基礎(chǔ)上,進一步編程完成視頻播放器的界面設(shè)計;使用互斥信號量來編寫同步程序?qū)崿F(xiàn)Mpeg4解碼器和視頻播放器的協(xié)同工作。在本視頻播放器的基礎(chǔ)上進行擴展,通過較小改動就可將其應(yīng)用與其他基于UNIX的操作系統(tǒng)上。圖1播放器播放界面設(shè)計圖(1)視頻顯示區(qū)參考文獻考慮到VxWorks實時操作系統(tǒng)下WindMl圖形庫的局限[1] Wind River Systems Ine. WindMLSDK pg:pdf .2002.性,在播放器顯示區(qū)設(shè)計中,采用將解碼后的幀圖像直接寫顯2] Wind River Systems Ine. WindMLDDK_ pg.pdf. 2002.存的方式來實現(xiàn),該方法既節(jié)省了系統(tǒng)資源,又提高了視頻播[3] 動態(tài)圖像專家組. ISO-IEC- 14496-2, 1999.放程序的實時性。[4] 孔祥營,柏桂枝.嵌人式實時操作系統(tǒng)VxWorks及其開發(fā)要將解碼后的圖像放入顯存中顯示,首先要確定顯存的起環(huán)境Tomado.中國電力出版社,2002.始地址。根據(jù)顯卡型號,可以采用顯存起始地址檢測函數(shù)來確(收稿日期: 2014-02-10)女業(yè)縣絲華華女業(yè)業(yè)姚業(yè)姚姚姚姚姐業(yè)姚業(yè)女業(yè)業(yè)業(yè)業(yè)與業(yè)奴業(yè)業(yè)處業(yè)業(yè)她馳業(yè)業(yè)業(yè)業(yè)業(yè)業(yè)姚姚業(yè)姚業(yè)姚姚(上接第43頁)分析和數(shù)據(jù)分析讀懂復(fù)雜程序,依據(jù)5個規(guī)范形式,構(gòu)造程序表7圖的層次優(yōu)先遍 歷的原子功能與程序原語數(shù)據(jù)的分析過程。原子功能程序原語1.建立鄰接點隊列(圖的首結(jié)點、連通子圖的首結(jié)點)1.1, 1.2. 1.3[1] 譚浩強. C程序設(shè)計[M] .清華大學(xué)出版社,1999.2.回潮(出隊)2.1, 2.2[2]嚴蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)(C 語言版) [M]. 清華大學(xué)3.擴展鄰接點的索引結(jié)構(gòu)(鄰接點隊列)3.1出版社,2007.3] 馮樹樁,徐六通.程序設(shè)計方法學(xué)[M]. 浙江大學(xué)出版4結(jié)語社,1988.高級語言課程首先是掌握程序閱讀的方法。用源程序過程(收稿日期: 2014-02-15)中國煤化工MYHCNM HG2014. 11電腦納技巧與雄護與

論文截圖
版權(quán):如無特殊注明,文章轉(zhuǎn)載自網(wǎng)絡(luò),侵權(quán)請聯(lián)系cnmhg168#163.com刪除!文件均為網(wǎng)友上傳,僅供研究和學(xué)習(xí)使用,務(wù)必24小時內(nèi)刪除。