1樓:
一、(1)c:dw定義的是一個字(兩個位元組),故預留2*50=100個位元組
(2)d:in的功能是從外部裝置讀入資料
(3)a:segment/ends定義組合語言源程式邏輯段(4)b:實體地址=段地址(左移4位(二進位制))+偏移地址二1.
mov ax,ds ;通過ax把資料段地址mov bx,ax ;送到bx中mov si,#0000h ;將指標指向偏移地址0000hstart:mov bx[si],#00h ;向bx[si]指向單元置零
inc si ;指標加一cmp si,#7d1h ;把si和2001作比較jne start ;不相等則轉到start2. mov cl,#4h ;把迴圈次數賦值給clrol al,cl ;將al中的資料依次迴圈左移四位;即將al暫存器中的高4位與低4位交換
2樓:new妞寧
樓上的很對 不必多說
幾道簡單的微控制器組合語言題
3樓:江西經濟觀察員
隨便找幾本書上面都有
建議你多看看書 ok!1
4樓:匿名使用者
mov ax,bx
這些題在清華版的組合語言習題裡有答案
求教一道簡單的組合語言題目,急?
5樓:專注51微控制器
qh:mov r0,#60h
mov r2,#10
mov 6ah,#0
mov 6bh,#0
loop:
mov a,@r0
jnb acc.7,lp1
cpl a
inc a
lp1:
lcall sqrt
add a,6ah
xch a,6ah
clr a
addc a,6bh
xch a,6bh
inc r0
djnz r2,loop
retsqrt:
mov b,a
mul abret
組合語言中的push的用法,組合語言中的PUSH的用法
push的操作過程是 sp sp 2,sp oprd 即先修改堆疊指標sp 壓入時為自動減2 然後,將指定 的運算元送入新的棧頂位置。此處的 sp oprd,也可以理解為 ss 16 sp oprd 或 ss sp oprd 示例 push dx push bp push cs push data1...
組合語言資料段問題,組合語言中定義的資料段的問題
如果1000h只是偏移地址,段地址由系統指定,可用下面方法 data segment org 1000h 用來指定下面資料或指令的偏移地址從該值開始 db 38h,4ah,2bh,80h,64h,0a7h,0bbh,9ch,83h,0f6h data ends 如果1000h是實體地址,則要先把它轉...
組合語言中test的用法,彙編中的TEST指令
test對兩個引數 目標,源 執行and邏輯操作,並根據結果設定標誌暫存器,結果本身不會儲存。test ax,bx 與 and ax,bx 命令有相同效果,只是test指令不改變ax和bx的內容,而and指令會把結果儲存到ax中。test命令將兩個運算元進行邏輯與運算,並根據運算結果設定相關的標誌位...