該內存不能為「read/written」的錯誤提示是否存在翻譯不嚴謹,比較「該內存無法被讀取/寫入」?
該內存不能為「read/written」 的錯誤提示是不是該寫成 該內存無法被讀取/該內存無法被寫入?補充一下自己的看法:該內存不能為「read」這個錯誤出自應用程序錯誤的引用了系統保留區的內存地址,而這個內存地址系統不允許此應用程序訪問,造成錯誤。所以「該內存無法被讀取」是成立的,應用程序本來應該應讀取此內存,但是沒有成功讀取,拋出引用的內存無法被讀取的錯誤。然而該內存不能為「read」可以理解為 「read」為一種狀態「可讀」,應用程序對於此內存地址本來不應該是read「可讀」,然後現在許可權為可讀了,產生了一個許可權錯誤。但是另外一種錯誤,該內存不能為「written」就難以用這種方法解釋,因為如果說寫入的話應該是該內存不能為「write」了。 所以我認為這個錯誤應該寫成該內存無法被讀取/寫入,而不是半天摸不著頭腦的該內存不能為「read/written」。
另外之前那句話是否應該改成「xxx指令引用了xxx內存」,而不是「xxx指令引用的xxx內存」。後者根本不合語法。
孫志貴說的明顯有問題啊
這個錯誤在xp是不能為read,在windows 98是非法操作,在7+我記得變成了「程序遇到問題需要關閉」
不過我最喜歡某個早期版本的寫法:
xx程序觸發了一般保護錯誤這個錯誤,說全了應該是,
a進程在b位置的c指令觸發了一般保護錯誤,因為其試圖訪問/寫入d內存位置,而該內存不能被讀取/寫入。instruction * of process (pid:*) at address 0x* triggered general protection fault , because the instruction tried to access memory at address 0x* , the memory could not be read/written.
然額ms並不願意把話說清楚。
Could not be read(被動語態,念過去分詞)和could not be "read" (read作為一個狀態的術語,念一般現在時)是兩個意思,只能問當初做英文原版錯誤信息的人這裡到底是什麼,但是從使用了「written」來看估計是第一種寫法。
操作系統對話框不是msgbox嗎
那輸出不應該用printf嗎對於內存無非就讀和寫程序工作用的機器語言也就只有read和write咯那用%s列印出指令當然是read或者write如果要翻譯不是更麻煩?做個if?以上。個人觀點wsprintf(Fbuf,L"The instruction at 0x%p referenced memory at 0x%p.The memory could not be %ws",CodePoint,ErrPoint,RWAction);
MessageBox(LocalHwnd,Fbuf,Ftitlebuf,MB_OKCANCEL|MB_ICONERROR);
//....
wsprintf(Fbuf,L""0x%p" 指令引用的 "0x%p" 內存。 該內存不應為 "%ws"",CodePoint,ErrPoint,RWAction);
MessageBox(LocalHwnd,Fbuf,Ftitlebuf,MB_OKCANCEL|MB_ICONERROR);
BTW:程序運行中的指令都是存儲在內存中的 所以x地址中存放的指令這句翻譯是正確的
禁止轉載應該譯為:
xxx 處的指令引用了 xxx 處的內存。該內存無法讀取/寫入。首先,reference 是計算機科學術語,中國大陸已經固定翻譯成「引用」,不應該譯成別的。見:https://zh.wikipedia.org/zh-cn/%E5%8F%83%E7%85%A7
其次,第二句話的 read/written 的確有可能是標誌位,可惜在這裡不是。這個錯誤框是一個內存訪問違例錯誤(又稱段錯誤,見:Segmentation fault),原因是程序試圖訪問它沒有許可權訪問的一段內存。一般某段內存都會有一個保護標誌,用來防止程序意外訪問不屬於它的內存空間(見:Memory protection)。以 Windows 為例,內存保護標誌 PAGE_READONLY 表示這段內存只允許讀取訪問,如果有程序寫入這段內存,就會出現圖中的錯誤框,顯示「該內存無法寫入」。我的翻譯:
指令「0x??????」參閱了「無法標記為『已讀取』」的記憶體位置「0x?????」。
指令「0x??????」參閱了「無法標記為『已寫入』」的記憶體位置「0x?????」。
就這兩句的翻譯而言,兩岸的官方中文化團隊都輸了。
講個關於微軟兩岸中文化團隊翻譯的笑話 - ibuick,高手進階 - 知乎專欄P.S.: 我對「約定俗成」的既定翻譯習慣當中的邏輯智商破產的翻譯錯誤向來都是零容忍。謝邀!
翻譯成「無法被讀取/寫入」是最合適的。
我一般用系統都是轉成英文界面的,包括Windows和Android,就是因為經常會被這些莫名其妙的翻譯搞得暈頭轉向。不僅是不嚴謹,就是赤裸裸的瞎譯……
推薦閱讀:
※如何徹底刪除魯大師?
※如何評價Windows 10 創意者更新的 「Dolby Atmos for headphones」?
※一直用的OS X,轉到Windows以後卡的要死怎麼辦?
※一個對點滑鼠深惡痛絕的計算機學生有什麼出路?
※所謂的盜版不穩定有何依據?為什麼不穩定?體現在哪裡?
TAG:英語翻譯 | 微軟Microsoft | MicrosoftWindows | 編程 | 內存RAM |