小命 [标号][:]空格[助记符]空格[操作数]空格[;注释] 要点可以是助记符指令、汇编指令、宏 指令和宏调用命令。 建议 1.助记符指令,一般用大写; 2.汇编命令和宏命令,以句号“.” 开始,且为通常用小写
7 要点 建议 [标号][:] 空格 [助记符] 空格 [操作数] 空格 [;注释] 可以是助记符指令、汇编指令、宏 指令和宏调用命令。 1.助记符指令,一般用大写; 2.汇编命令和宏命令,以句号“.” 开始,且为通常用小写
小命 [标号][:]空格[助记符]空格[操作数]空格[;注释] 要点 1.指令中的操作数或汇 编命令中定义的内容 2.操作数之间必须用逗 号“,”分开。 1.从分号“;”开始 要点2.可以放在指令或汇编命令后面, 也可以放在单独的一行或数行
8 要点 [标号][:] 空格 [助记符] 空格 [操作数] 空格 [;注释] 1.指令中的操作数或汇 编命令中定义的内容 2.操作数之间必须用逗 号“ , ”分开。 1.从分号“ ; ”开始 2.可以放在指令或汇编命令后面, 也可以放在单独的一行或数行。 要点
小命 2.汇编语言源程序的数据型式 二进制:如1110001b或11110B; 八进制:226q或572Q; 十进制:1234或+1234或-1234(缺省型) 十六进制:0A40h或0A40H或0xA40 浮点数:1.623e-23(仅C语言程序中能用,汇编程序不能用 字符:“D 字符串:“thi IS is a string
9 2.汇编语言源程序的数据型式 二进制:如1110001b或1111001B; 八进制:226q或572Q; 十进制:1234或+1234或-1234(缺省型) 十六进制:0A40h或0A40H或0xA40 浮点数:1.623e-23(仅C语言程序中能用,汇编程序不能用) 字符:‘D’ 字符串:“thisis a string
小命 3.汇编命令 汇编命令是用来为程序提供数据和控制汇编进程的。C54x汇 编器共有64条汇编命令,根据它们的功能,可以将汇编命令 分成8类: (1)对各种段进行定义的命令。 (2)对常数(数据和存储器)进行初始化的命令。 (3)调整SPC(段寄存器)的指令。 (4)对输出列表文件格式化的命令。 (5)引用其它文件的命令。 (6)控制条件汇编的命令。 (7)在汇编时定义符号的命令。 (8)执行其它功能的命令
10 3.汇编命令 汇编命令是用来为程序提供数据和控制汇编进程的。C54x汇 编器共有64条汇编命令,根据它们的功能,可以将汇编命令 分成8类: (1)对各种段进行定义的命令。 (2)对常数(数据和存储器)进行初始化的命令。 (3)调整SPC(段寄存器)的指令。 (4)对输出列表文件格式化的命令。 (5)引用其它文件的命令。 (6)控制条件汇编的命令。 (7)在汇编时定义符号的命令。 (8)执行其它功能的命令
小命 例4-1编写计算y=a*x1+2*x2+3*x3+a4*x4的汇编源程序 kk;六κκκk六κκκ六κκκκ;;κκκ;☆κκk六六κ s example. asm y=al*xl+a2*x2+a3*x3+a4 x4 s title“ example.asmi 为汇编源程序取名 mregs ;定义存储器映象寄存器 STACK, sect“ STACK”,10h;分配10个单元的堆栈空间 bss a 4 为系数a分配4个单元的空间 bss 为变量x分配4个单元的空间 bss y ;为结果y分配1个单元的空间 def c intoo ;定义标号_cint00 data ;定义数据代码段 table: word 1.2 3.4 ;在标号 table开始的8个单元 中 d8.6.4.2 为这8个单元脑初值
11 例4-1 编写计算y=a1*x1+a2*x2+a3*x3+a4*x4的汇编源程序 * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * example.asm y=a1*x1+a2*x2+a3*x3+a4*x4 * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * .title “example.asm” ;为汇编源程序取名 .mmregs ;定义存储器映象寄存器 STACK .usect “STACK”,10h ;分配10个单元的堆栈空间 .bss a,4 ;为系数a分配4个单元的空间 .bss x,4 ;为变量x分配4个单元的空间 .bss y,1 ;为结果y 分配1个单元的空间 .def _c_int00 ;定义标号_c_int00 .data ;定义数据代码段 table: .word 1,2,3,4 ;在标号table开始的8个单元 中 .word 8,6,4,2 ;为这8个单元赋初值