●先看两个汇编源程序: file 1. asm global test loop: call test bc loop, ageq end file2.asm file 3. asm global test glob al test test test mar大a3+ mar(为ar3+)
⚫ 先看两个汇编源程序: file1.asm .global test loop: call test bc loop,ageq .end file2.asm file3.asm .global test .glob al test test : test: mar *ar3+ mar(*ar3+) add #1,a
汇编工具ASM500的使用举例 o asm500 filel asm <enter o asm500 file2- <enter> o asm500 file3 -mg-l <enter>
汇编工具ASM500的使用举例 ⚫ asm500 file1.asm <enter> ⚫ asm500 file2 -l <enter> ⚫ asm500 file3 -mg -l <enter>
TMS320C54x COFF Assembler Version 1.20 Sun jul 3012:11:252000 Copyright (c)1997 Texas Instruments Incorporated file2. asm PAGE global test 3000000test 40000006D93mar*ar3+ 5000001F000add#1a 0000020001 6000003FC00ret er No Errors, No Warnings
TMS320C54x COFF Assembler Version 1.20 Sun Jul 30 12:11:25 2000 Copyright (c) 1997 Texas Instruments Incorporated file2.asm PAGE 1 1 .global test 2 3 000000 test: 4 000000 6D93 mar *ar3+ 5 000001 F000 add #1,a 000002 0001 6 000003 FC00 ret 7 8 .end No Errors, No Warnings
TMS320C54x COFF Assembler Version 1.20 Sun Jul 30 12: 2 Copyright(c)1997 Texas Instruments Incorporated file3. asm PAGE global test 3000000test: 40000006D93mar(*ar3+) 5000001F000a=a+#1 0000020001 6000003 FC00 return end lo Errors, No Warnings
TMS320C54x COFF Assembler Version 1.20 Sun Jul 30 12:21:26 2000 Copyright (c) 1997 Texas Instruments Incorporated file3.asm PAGE 1 1 .global test 2 3 000000 test: 4 000000 6D93 mar(*ar3+) 5 000001 F000 a=a+#1 000002 0001 6 000003 FC00 return 7 8 .end No Errors, No Warnings
c54X汇编语言书写规范 ●语法:labl:指令操作数[;注释 #前缀表示立即数或直接地址 ●后缀B或b表示二进制常数 例如:LD#1000B,A ●后缀Q或q表示八进制常数,或以0开始的常数 例如:LD#10Q,A(010,A) 十二进制常数 例如:LD#1000,A
C54X汇编语言书写规范 ⚫ 语法: [label][:] 指令 [操作数] [;注释] ⚫ #前缀表示立即数或直接地址 ⚫ 后缀B或b表示二进制常数 例如: LD #1000B,A ⚫ 后缀Q或q表示八进制常数,或以0开始的常数 例如: LD #10Q,A (010,A) ⚫ 十二进制常数 例如: LD #1000,A