2015-05-05 34 views
-1

我是新裝配。我最近遇到了DB命令來將一個字符串存儲到RAM中。程序集編程sms32v50

我正在尋找最有效的方法將字符串複製到VDU。

例如我使用DB「TOP」 的T公司將存放在RAM單元08,我想複製所有字符到VDU起始地址爲C0

最新最好的方式做到這一點?

+2

取決於。一個簡單的循環通常可以工作,但您也可以使用'rep movsb',但需要一些代碼來設置。對於帶有編譯時大小的簡短副本(例如,如果您總是需要複製3個字節),也可以使用一些'mov'指令。 – Jester

+0

感謝您的迴應,我已經嘗試了mov指令,但是所有在一起im移動約15個字節從不同的位置和IM即時在內存中非常有限 – calmcalmuncle

回答

0

所以,顯然你正在優化大小。然後rep movsb可能是有益的:

mov si, 8 
mov di, 0xc0 
mov cx, 15 
rep movsb 

這是11個字節的代碼,假設DSES已經設置正確,與DF一起。