1樓:做而論道
data segment
value dw 5678h,6060h----逗號,不可用中文逗號
table db 33h,55h,20h----逗號,不可用中文逗號
data ends
code segment
assume cs :code ,ds:data
start:
mov ax ,data
mova ds,ax----mova a!!!
mov ax ,value---前邊雖然定義了value,但是沒有定義成功
mov bx ,ax
mov ax value
mov [ax],2000h----[ax] ? 不可
mov dl,80h
mov si,0020h
mov [bx+si] ,dl
mov table [bx+si],al---前邊雖然定義了,但是沒有定義成功
mov ax,4c00h
int 21h
code ends
end start
2樓:匿名使用者
undefined symbol : value ,table 等 注意大小寫前後要 一致;
mova?是什麼指令呢?
還有標點符號,逗號丟了
1.txt(2): error a2044: invalid character in file ;注意大小寫前後要 一致;
1.txt(3): error a2044: invalid character in file;注意大小寫前後要 一致;
1.txt(9): error a2008: syntax error : ds; 不能作為目的地址
1.txt(12): error a2008: syntax error : in instruction ;指令錯誤
1.txt(10): error a2006: undefined symbol : value注意大小寫前後要 一致;
1.txt(13): error a2031: must be index or base register;必須是指標或基地址暫存器,ax不是
1.txt(17): error a2006: undefined symbol : table 注意大小寫前後要 一致;
在keil下編寫51微控制器的彙編程式,怎麼會出那麼多錯誤呢?明明是照著書寫進去的。
3樓:匿名使用者
應該是軟體的問題 可能是a51選項的設定問題
4樓:
檢查一下工程的選項,看看device是選的啥,也許不是51微控制器?
5樓:匿名使用者
這是彙編器有問題,不認識埠暫存器,你用的哪個版本?換個版本試試。
學習高階語言
6樓:匿名使用者
建議你學習c#,現在這個發展很大
組合語言程式設計的問題,組合語言程式設計問題
1.jmp bx 如果 bx 1020h,那麼 ip 1020h,因為此種形式為通過暫存器的段內間接轉移,執行時將把暫存器的內容直接送ip,所以執行此指令後ip的值為1020h 2.jmp tab bx si 如果 ds 2000h,bx 1020h,si 0002h,tab 0010h,21032...
組合語言與C 的區別,組合語言和C 語言有什麼區別
彙編是最基礎的程式語言.c 是一種物件導向物件的語言.c 要想在系統上執行,最終是轉換為機器碼.彙編也是,但是彙編轉換為機器碼比較容易.c 轉換則要先轉換為彙編.c也可以稱作高階語言.但是,c語言在c 之下.起一個過渡作用.如果你想學好程式設計.先學c語言或者組合語言.鄙人建議你先學組合語言 然後再...
關於組合語言的迴圈問題,關於組合語言中的PUSH問題。
你理解bai從程式上面執行下來到du達 loop s後又去執行標zhi號s處,這沒錯。然dao後就內無限迴圈死,這就錯了容 組合語言的迴圈指令loop是有條件的,這個隱含操作和條件就是每迴圈一次,cx cx 1,如果cx 0,迴圈就結束了。在這個程式中,迴圈3次結束。關於組合語言中的push問題。每...