關於彙編在DOS中顯示字元的問題

2025-04-29 08:35:10 字數 1540 閱讀 2440

1樓:網友

這位樓主和橡局睜廳樓梁早讓上這位兄臺,你們程式的最後一句都應該是int 21h啊。

掉了個h不知是否打漏了。

其他的,思路都很正確啊。

組合語言中的dos問題

2樓:還是別說話

其實也可以說彙編程式不是在dos環境下執行的。

dos平臺不是乙個現在我們概念中的作業系統,它不支援多工,cpu一時間只能執行乙個執行緒。所以在程式執行時,dos本身就失去了對電腦的控制,cpu被應用程式佔用。應用程式結束後當然不再控制cpu,所以由dos平臺再次控制電腦,也就是所謂返回dos。

這樣看來其實dos更像乙個封裝了io操作的開機介面,其地位與其他應用程式更像是平等的。

dos時代,我們用匯編編的程式都是很接近最底層的程式,在程式中我們使用int中斷來實現io功能,其中包括int 21h中斷--即通常說的dos中斷,還有其他的ibm標準的bios中斷,實際上兩者都能完成一樣的功能,只不過dos中斷的操作封裝的更好,普通使用者使用來編寫應用更便捷;而bios中斷的操作更底層,更靈活,更繁瑣。

3樓:敏千邇

dos是16位的,這種16位系統有乙個特點,就是沒有權利之分,同一時刻只能執行乙個程式,所以dos呼叫程式後,程式完全「取代」了dos的程序,當它執行到頭的時候,必須讓dos在取代他,就是返回。(一般通過21h中斷實現)

4樓:網友

dos 的所有命令都是在dos提示符(如c:\)下執行, 執行完乙個命令後將又回到提示符下。 所以我們寫的程式在執行完成後也必須返回到提示符下, 通俗說法就是返回dos.

5樓:網友

書上所講的彙編,通常指16位彙編,其執行的系統一般為dos。執行程式時,dos系統呼叫程式;執行結束後,自然要返回dos。但32位,64位彙編的話,可以執行在linux,windows等作業系統,這時候,就不存在返回dos一說了。

組合語言怎麼在寫進dos

6樓:網友

什麼叫「怎麼在寫進dos」?你是要在「命令提示符」(模擬dos)裡面寫組合語言程式嗎?說明白點啊!

組合語言用dos顯示字串出現這樣的情況

7樓:網友

不知你送了些什麼資料到顯示緩衝區去了,顯示緩衝區起始位址在b000:8000,或者偷懶的話直接將段位址弄成b800,顯示緩衝區的結構每乙個字代表乙個字元,這個字的低位元組是字元的ascii編碼,高位位元組是顯示的色彩屬性,如果你將一堆字元送人緩衝區,將顯示屬性的部分也當作字元,那麼出來的結果就是你現在看到的,花花綠綠的。

顯示緩衝區隨著顯示模式不同而不同,我們常見的顯示模式0-3,起始位址都在b000:8000,格式如上所訴,下面是模式3的顯示緩衝區,你必須自己設定色彩模式,否則就只能是亂七八糟了。

圖中07,就是常見的黑白格式了,黑底白字。

8樓:做而論道

這有什麼奇怪的?

看看你的程式吧,一定就是程式編寫的問題。

用c如何突出顯示一段字串中的一些特定字元

你好,c 的話,可以很方便的使用正規表示式來滿足您的需求。以下是一個示例 請參考 是哪一個控制元件 是web 還是 winform?你如果是坐 的話,就是把你的卡號放入一個label裡吧,這樣可以設定顏色,其他的東西也是可以放入label吧 用 號連線符號來連線要突出的字元!先獲取vip 所在的位置...

關於日語句子的問題,問關於日語中的句子成分問題

當然不可以哦 xx 地點 或 或 這個句型是一個存在句,是說在某個地方,有什麼東西或者什麼人,比 更加有強調作用。所以說 壁 意思就是說牆上有開關。而a b 則是判斷句,意思是說 a是b。比如說 本 這是書。所以 壁 是不對的,沒有這種句型。其實這兩句的關鍵就是一個 它是可以表示事物存在場所的一個助...

js中關於改變物件屬性值迴圈push的問題

var dc var dc1 for var i 0 i 5 i 傳址 和傳值的問版題權 var dc var dc1 for var i 0 i 5 i for var i 0 i 5 i js如何動態迴圈給陣列名加入變數值 100 陣列本身就是一copy個變數 你說的這種情況不可以吧!但是你可以...