求大神幫我分析下這個組合語言程式源程式

2021-05-04 05:10:25 字數 1576 閱讀 1316

1樓:

這段**的功能是將資料段定義的 字元常量 string1中的字元("count")逐個複製到由string2的偏移量(string2的偏移量為: 05h )開始的記憶體單元中,並輸出到顯示器上。

因為 mov cx,10 設定的迴圈次數為10次

前五次的迴圈為:

將字元常量 string1中的字元("count")逐個複製到由string2的偏移量(string2的偏移量為: 05h )開始的記憶體單元中,並輸出到顯示器上。

後五次的迴圈為:

將 string2 中的字元("count")逐個複製到偏移量為 0ah 開始的記憶體單元中,並輸出到顯示器上。

所以程式執行結束後,string2 的偏移量(05h) 開始的記憶體單元連續存放的字元資料為 「countcount」 ,佔是個記憶體單元。並且在顯示器上顯示:countcount 。

datas segment

string1 db "count";此處輸入資料段**

string2 db ?

datas ends

codes segment

assume cs:codes,ds:datas

start:

mov ax,datas

mov ds,ax

mov cx,10

lea si,string1 ;string1的有效地址存入si 。

lea di,string2 ;string2的有效地址存入di 。

aa:mov dl,[si] ;有效地址 [si] 中的資料傳送到dl中

mov [di],dl ;dl中的資料傳送到有效地址 [di] 中

mov ah,2 ;dl中的資料對應的字元輸出到螢幕上。

int 21h

inc si ;源運算元地址加1

inc di ;目的操作地址加1

loop aa ;迴圈執行由 語句 mov dl, [si] 開始的迴圈體,執行10次。

;此處輸入**段**

mov ah,4ch

int 21h

codes ends

end start

2樓:匿名使用者

顯示countcount

準備學51微控制器的組合語言,求大神幫我分析下這段程式各個指令是什麼

3樓:匿名使用者

程式註釋已經很詳細了,這裡說說功能吧。程式功能很簡單,就是當兩個鍵同時按下時,接通電磁鐵3毫秒,然後等待鍵釋放,如此迴圈。

求大神解釋一下程式的意思,幫我解釋一下每一句話,謝謝,(微控制器組合語言程式) 60

4樓:匿名使用者

註釋已經比較清楚

查頻率設定定時器,定時器產生波形,

根據節拍等待不同時間

;音階頻率表 6,2,3; 6-->1,2,3,4,5,6,7音符 2 音階, 3 音長

準備學51微控制器的組合語言,求大神幫我分析下這段程式各個指令

程式註釋已經很詳細了,這裡說說功能吧。程式功能很簡單,就是當兩個鍵同時按下時,接通電磁鐵3毫秒,然後等待鍵釋放,如此迴圈。求組合語言大神,幫我翻譯一段程式,是8051微控制器的一段程式,每步是幹什麼的 越詳細越好!謝謝!rs equ p3.3 rw equ p3.4 e equ p3.5 分別bai...

求問這個程式用組合語言怎麼寫,請儘量標註好每一句語言的用法和

code segment assume cs code org 100h start jmp bbb x dw 0ffffh msg1 db 10,13,1 msg2 db 10,13,0 msg3 db 10,13,1 bbb push cs pop ds cmp word ptr x,0 je ...

求大神幫我解析一下這個C語言程式

此程式功能 有一個指令碼叫a.vbs,儲存著msgbox 視窗混亂!如果雙擊執行會彈框。專 有個批處理 屬檔案a.bat,儲存著pause,只是暫停功能,如果雙擊後彈出cmd顯示 按任意鍵繼續 這程式執行a.vbs,等兩秒,執行15遍a.bat 跪求大神幫我註釋一下這個c語言程式 20 求大神幫我看...