導航:首頁 > 軟體知識 > 什麼是程序調試

什麼是程序調試

發布時間:2022-02-06 13:01:24

① 程序調試的任務是什麼

計算機工作時,所有運行的程序都需要經過內存來執行,先要將所需的指令和數據從外部存儲器(如硬碟、軟盤、光碟等)調入內存中,CPU再從內存中讀取指令或數據進行運算,並將運算結果存入內存中,內存就像一個周轉倉庫。當運行的程序需要佔用大量內存時,這個倉庫的容量就會所剩無幾,此時總有一部分暫時不用的「惰性」數據占據著有限的內存空間,為了給「活性」數據騰出地方, Windows操作系統就利用硬碟空間建立一個後備「倉庫」(即虛擬內存),去存放這些「惰性」數據。Windows運用虛擬內存技術,自動調用硬碟來充當內存,以緩解內存的緊張。

系統管理虛擬內存的默認設置,通常比較保守,在自動調節時會造成頁面文件不連續,而降低讀寫效率,設置:
①右擊「我的電腦」,選擇「屬性」-「高級」選項卡。
②點擊「性能」-「設置」,在「性能選項」窗口中選擇「高級」選項卡,打開對話框。
③在對話框可看到關於虛擬內存的區域,點擊「更改」按鈕進入「虛擬內存」設置。選擇一個有較大空閑容量的分區,勾選「自定義大小」前的復選框,將具體數值填入「初始大小」、「最大值」欄中,而後依次點擊「設置→確定」按鈕即可,最後重新啟動使虛擬內存設置生效。
建議:可以劃分出一個小分區專門提供給虛擬內存、IE臨時文件存儲等使用,以後可以對該分區定期進行磁碟整理,從而能更好提高計算機的工作效率。

虛擬內存交換文件最小值、最大值和內存大小相關:一般,內存在256MB以下,可設置為 2 到 3 倍;在512MB以上,可設置為 1.5 到 2 倍。如果虛擬內存設置得當,將會提升電腦的性能和運行速度。在默認狀態下,Windows始終將虛擬內存設為物理內存的1.5倍。這樣,如果安裝2GB的內存,系統就會佔用高達3GB的硬碟空間作為虛擬內存。但是當前的主流應用軟體和游戲軟體,沒有必要使用這么多的虛擬內存

② 程序調試通常稱為什麼

項目在Debug模式下打包跟在release模式下打包有什麼區別?需要注意哪些嗎?問題通常稱為調試版本,它包含調試信息,並且不作任何優化,便於程序員調試程序。

③ 什麼是軟體調試軟體調試應遵循哪些原則

軟體調試就是你對你編寫的程序要進行測試程序的正確性。有時候經常是你的程序沒有語法和語句上的錯誤,但是你的程序運行結果不一定正確,這時候就需要你進行軟體調試了。這部分的調試工作就要比你前面首先調試程序的語法和語句錯誤的難度要大。
至於說軟體調試應遵循哪些原則?你可以借一本軟體工程的教材進行參考。軟體工程教材裡面都會講軟體調試的,會講到耦合性、內聚性,具體的內容我好久不用,忘得差不多了,你可以參考書中內容。

④ 什麼是計算機的程序調試

所謂程序調試,是將編制的程序投入實際運行前,用手工或編譯程序等方法進行測試,修正語法錯誤和邏輯錯誤的過程。這是保證計算機信息系統正確性的必不可少的步驟。編完計算機程序,必須送入計算機中測試。
程序調試分以下,幾步進行:
第一步,用編輯程序把編制的源程序按照一定的書寫格式送到計算機中,編輯程序會根據使用人員的意圖對源程序進行增、刪或修改。
第二步,把送入的源程序翻譯成機器語言,即用編譯程序對源程序進行語法檢查並將符合語法規則的源程序語句翻譯成計算機能識別的「語言」。如果經編譯程序檢查,發現有語法錯誤,那就必須用編輯程序來修改源程序中的語法錯誤,然後再編譯,直至沒有語法錯誤為止。
第三步,使用計算機中的連接程序,把翻譯好的計算機語言程序連接起來,並扶植成一個計算機能真正運行的程序。在連接過程中,一般不會出現連接錯誤,如果出現了連接錯誤,說明源程序中存在子程序的調用混亂或參數傳遞錯誤等問題。這時又要用編輯程序對源程序進行修改,再進行編譯和連接,如此反復進行,直至沒有連接錯誤為止。
第四步,將修改後的程序進行試算,這時可以假設幾個模擬數據去試運行,並把輸出結果與手工處理的正確結果相比較。如有差異,就表明計算機的程序存在有邏輯錯誤。如果程序不大,可以用人工方法去模擬計算機對源程序的這幾個數據進行修改處理;如果程序比較大,人工模擬顯然行不通,這時只能將計算機設置成單步執行的方式,一步步跟蹤程序的運行。一旦找到問題所在,仍然要用編輯程序來修改源程序,接著仍要編譯、連接和執行,直至無邏輯錯誤為止。
參考資料:

⑤ 軟體(程序)調試的任務是什麼

解析:程序的調試任務是診斷和改正程序中的錯誤。

⑥ c語言程序調試

調試程序一般應經過以下幾個步驟:

1先進行人工檢查,即靜態檢查。在寫好一個程序以後,不要匆匆忙忙上機,而應對紙面上的程序進行人工檢查。這一步是十分重要的,它能發現程序設計人員由於疏忽而造成的多數錯誤。而這一步驟往往容易被人忽視。有人總希望把一切推給計算機系統去做,但這樣就會多佔用機器時間,作為一個程序人員應當養成嚴謹的科學作風,每一步都要嚴格把關,不把問題留給後面的程序。

為了更有效地進行人工檢查,所編的程序應注意力求做到以下幾點:應當採用結構化程序方法編程,以增加可讀性;2盡可能多加註釋,以幫助理解每段程序的作用;3在編寫復雜的程序時不要將全部語句都寫在main函數中,而要多利用函數,用一個函數來實現一個單獨的功能。這樣既易於閱讀也便於調試,各函數之間除用參數傳遞數據這一渠道以外,數據間盡量少出現耦合關系,便於分別檢查和處理。

2在人工檢查無誤後,才可以上機調試。通過上機發現錯誤稱動態檢查。在編譯時給出語法錯誤的信息,可以根據提示的信息具體找出程序中出錯之處並改正之。應當注意的是有時提示的出錯並不是真正出錯的行,如果在提示出錯的行上找不到錯誤的話應當到上一行再找。有時提示出錯的類型並非絕對准確,由於出錯的情況繁多各種錯誤互有關聯,因止要善於分析,找出真正的錯誤,而不要只從字面意義上找出錯信息,鑽牛角尖。

如果系統提示的出錯信息多,應當從上到下一一改正。有時顯示出一大片出錯信息往往使人感到問題嚴重,無從下手。其實可能只有一二個錯誤。例如,對使用的變數未定義,編譯時就會對所有含該變數的語句發出出錯信息;有的是少了「}」或多了「}」有的是書寫語句時忘記寫「;」或是全形的「;」了,只要加上一個變數定義,或填加「};」就所有錯誤都消除了。

3在改正語法錯誤後,程序經過連接就得到可執行的目標程序。運行程序,輸入程序所需數據,就可得到運行結果。應當對運行結果作分析。看它是否符合要求。有的初學者看到運行結果就認為沒問題了,不作認真分析,這是危險的。

有時,數據比較復雜,難以立即判斷結果是否正確。可以事先考慮好一批「試驗數據」,輸入這些數據可以得出容易判斷正確與否的結果。可以在計算的輸出結果的程序地方加入一段輸出到串口的程序,利用串口窗口可以方便看到結果的,比模擬的都好和直觀。例如,if語句有兩個分支,有可能在流程經過其中一個分支時結果正確,而經過其它一個分支時結果不對等。必須考慮周全。

事實上,當程序復雜時很難把所有的可能方案全部都試到,選擇典型的情況作試驗即可。

4 運行結果不對,大多屬於邏輯錯誤。對這類錯誤往往需要仔細檢查和分析才能發現。可以採用以下辦法:

1 將程序與流程圖仔細對照,如果流程圖是正確的話,程序寫錯了,是很容易發現的。例如,復合語句忘記寫花括弧,只要一對照流程圖就能很快發現。

2 如果實在找不到錯誤,可以採用「分段檢查」的方法。在程序不同的位置設幾個printf函數語句,輸出有關變數的值,往下檢查。直到找到在哪一段中數據不對為止。這時就已經把錯誤局限在這一段中了。不斷減小「查錯區」,就可能發現錯誤所在。

3 也可以用「條件編譯」命令進行程序調試(在程序調試階段,若干printf函數語句就要進行編譯並執行。當調試完畢,這些語句不要再編譯了,也不再被執行了)。這種方法可以不必一一去printf函數語句,以提高效率。

4 如果在程序中沒有發現問題,就要檢查流程圖有無錯誤,即演算法有無問題,如有則改正之,接著修改程序。

5 有的系統還提供debug(調試)工具,跟蹤流程並給出相應信息,使用更為方便,如KEILC51里的調試運行就很好用的,可以在命令的窗口輸入程序中需要的數據和開關量、中斷、I/O口的電平等來方便完成程序的運行,使用時要先打開Options for Target'Target1'(工程菜單里的目標『TARGET1'屬性)-----點DEBUG----選中左邊use Simulator\load Application at sta\Go till main;按確定後退出到編輯畫面,要先對源程序進行編譯後沒有錯誤才可以按主菜單上的調試按鈕,進行調試的,F10為子程序運行式的單步、F11為單步調試;具體使用可以看本站提供的51單片機應用系統開發實例一書中的Dscope foe Windows一節。可以下載本站上中文版的KIELC51就直觀了。

總之,程序調試是一項細致深入的工作,需要下功夫,動腦子,善於累積經驗。在程序調試過程中往往反映出一個人的水平,經驗和科學態度。希望讀者能給以足夠的重視。上機調試程序的目的決不 是為了「驗證程序的正確」,而是「掌握調試的方法和技術」,不要一直依賴模擬器來解決,要學會自己找問題,這樣慢慢自己就會寫出錯誤較少的實用的程序,站長就沒有模擬器的哦,靠KEILC51里的軟體模擬就解決了。
請採納。

⑦ c語言中什麼叫做單步調試,步驟是什麼

單步調試是指程序開發中,為了找到程序的bug,通常採用的一種調試手段,一步一步跟蹤程序執行的流程,根據變數的值,找到錯誤的原因。

解決這個問題的方法如下:

1、首先需要設置斷點的那一行代碼的最前面點擊下,就會出現一個紅色的圓球,代表設置斷點成功,下圖一共設置了4個斷點。

⑧ 什麼是軟體調試

看名字也能看出來啊,測試只是測試軟體的性能用途,而調試則是對軟體進行加工改造同時測試

⑨ 軟體測試和軟體調試的區別是什麼

一、性質不同

1、軟體測試:描述一種用來促進鑒定軟體的正確性、完整性、安全性和質量的過程。

2、軟體調試:泛指重現軟體故障、定位故障根源並最終解決軟體問題的過程。

二、目的不同

1、軟體測試:鑒定、審核軟體。

2、軟體調試:軟體調試的基本目標是定位軟體中存在的設計錯誤(bug)。但除此之外,軟體調試技術和工具還有很多其他用途,比如分析軟體的工作原理、分析系統崩潰、輔助解決系統和硬體問題等。

三、特點不同

1、軟體測試:對計算機軟體進行測試前,需遵循軟體測試原則,即不完全原則的遵守。

2、軟體調試:重現故障;定位根源;探索和實現解決方案;驗證方案。

⑩ 什麼是bug程序調試的目的是什麼

目的:發現程序中的bug
步驟:先對相應的代碼行打上斷點,然後用debug模式啟動這個程序,程序在執行到斷點代碼行時會停止,然後可以根據對應的操作,執行下一行代碼等等來發現程序在執行到哪一行代碼時出錯,為什麼出錯

閱讀全文

與什麼是程序調試相關的資料

熱點內容
陌陌上收到的信息在哪裡 瀏覽:476
銀川交易市場在哪裡 瀏覽:782
如何保護數據信息 瀏覽:247
安居客交易經紀人怎麼弄 瀏覽:962
湘典檳榔來了代理得多少錢 瀏覽:269
ups市場如何 瀏覽:367
什麼地方可以做茶葉代理 瀏覽:216
機器人代理商是什麼 瀏覽:850
dma傳輸數據的速度由什麼決定 瀏覽:173
資料庫審計有哪些工具 瀏覽:200
高淳區五金舊貨市場在什麼位置 瀏覽:591
生物性存貨監盤程序包括什麼 瀏覽:820
微信小程序中國移動怎麼用 瀏覽:171
wps中的數據驗證在什麼位置 瀏覽:920
電腦轉轉交易記錄怎麼看 瀏覽:501
股票板塊信息怎麼查 瀏覽:493
溫州男裝市場哪個最好 瀏覽:792
產權界定如何降低交易費用 瀏覽:896
古董交易市場哪個好 瀏覽:601
房山哪裡有農貿菜市場 瀏覽:245