[英]label or instruction expected at start of line YASM
我正在嘗試構建程序集YASM代碼,該代碼應用於計算2D平面上兩個點(A和B)之間的距離。
這是我用來構建代碼的命令:
yasm -f elf64 -g dwarf2 -l distance.lst distance.asm
distance.asm:2:錯誤:在行開始處期望的標簽或指令距離.asm:4:錯誤:在行開始處期望的標簽或指令
我是組裝的新手,無法弄清楚如何修復錯誤:
segment .data
Ax dq 0 ; x coordinate of A
Ay dq 0 ; y coordinate of A
Bx dq 1 ; x coordinate of B
By dq 1 ; y coordinate of B
segment .text
global _start
_start:
mov rax, [Ax] ; Writing values
mov rbx, [Ay] ; of A and B
mov rcx, [Bx] ; coordinates to
mov rdx, [By] ; registers
sub rax, rcx ; Length of the first cathetus
sub rbx, rdx ; Length of the second cathetus
imul rax, rbx ; Suqare of distanse between A and B
我的問題是:為什么我會收到上面顯示的錯誤? (我已經閱讀了關於stackoverflow的類似問題,但是我仍然無法弄清楚我的代碼出了什么問題)
代替標簽
Ax, Ay, Bx, By
使用其他人,例如
Mx, My, Nx, Ny
因為標簽不能是AX
, BX
, CX
,...等寄存器名( Ay
和By
可以)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.