為何出現“非法操作

時間:2024-08-10 15:13:46 計算機畢業論文 我要投稿
  • 相關推薦

為何出現“非法操作

為何出現“非法操作”

徐淼華

中國科學技術大學少年班9700(230026)

在使用電腦的過程中,尤其是編程的時候,經常會遇到Windows彈出如圖所示的對話框,提示軟件進行了非法操作:


圖:點擊了“詳細資料”后的對話框

此時如果點擊“詳細資料”,對話框擴大窗口,給出了寄存器的值,但是一般人看不明白;而如果點擊“調試”,它將調用Visual C 或Delphi之類的安裝在系統中的編譯器,并在編譯器中顯示程序的匯編碼,更是讓人頭大一圈;若點擊“關閉”,則會將內存中的相關數據都丟棄(很多時候這些數據是有用的),非常可惜。

引起Windows彈出此對話框的原因是內存出錯。內存質量不好,不穩定,某些數據無端的改變,當然被認為是“非法操作”。這里討論的是軟件特別是自己編寫的小程序是如何引起錯誤的。Windows 9X中,不必關心內存模式、地址轉換、64K的代碼段和數據段,因為地址和內存都放在線形的32位內存空間中。每個應用程序都可“看見”4GB的線形地址空間,其中最開始的4MB由操作系統保留,剩下的不足2GB的空間屬于應用程序私有空間。要強調的是,在4MB 到2GB之間的非保留空間是完全私有的。每個進程都可有自己私有的地址空間,而且與其他進程的地址空間是完全無關的。利用處理器的頁映射能力,操作系統可為每個進程提供獨立的從邏輯地址到物理內存(RAM或分頁文件)的映射,使一個進程的地址空間對另一個進程完全不可見。編程時,若一個進程(程序)訪問了它的地址空間外的地址,Windows 9X就會彈出上述對話框。具體有以下幾個原因:

1.數組下標越界

觀察以下程序:

#include

【為何出現“非法操作】相關文章:

聯想的薪酬為何依然神秘?03-20

“哲學”為何在古希臘誕生01-16

職教培訓:為何“春風難綠”?11-30

論文答辯易出現的不足12-11

談談日常交際中出現的誤區03-18

獨立董事退出現象研究03-24

探討如何應對強化造影出現的問題03-18

聲音過亮出現的原因是什么?03-28

淺析旅游管理專業實習出現問題及對策01-05

論信用卡為何被消費者“卡”在門外11-14

亚洲制服丝袜二区欧美精品,亚洲精品无码视频乱码,日韩av无码一区二区,国产人妖视频一区二区
日韩欧美一区二区在线蜜桃 | 一区二区不卡不卡高清在线 | 亚洲国产日韩一区二区三区 | 日本区一视频.区二视频 | 中字幕久久国产精品免费 | 在线精品国精品91 |