目标机模型 ■指令形式(寻址方式) (R)一通用寄存器R:中的内容 (M)一内存单元M中的内容 类型 指令形式 意义(设op是二目运算符) 直接地址型 op Ri,M (Ri)op(M)→Ri 寄存器型 op Ri,Rj (Ri)op(R)→Ri 变址型 op Ri,c(Rj) (Ri)op(R)+c)→Ri 间接型 op Ri,*M (Ri)op(M)→R op Ri,*Rj (R)op(R)→R1 op Ri,*c(Ri) (Ri)op((R)+c)→R 直接操作数型 op Ri,#X (Ri)opX→Ri 2025/4/3 国D6
2025/4/3 6 目标机模型 ◼ 指令形式(寻址方式) (Ri)—通用寄存器Ri中的内容 (M)—内存单元M中的内容 类 型 指令形式 意义(设op是二目运算符) 直接地址型 op Ri,M (Ri)op(M)Ri 寄存器型 op Ri,Rj (Ri)op(Rj)Ri 变址型 op Ri,c(Rj) (Ri)op((Rj)+c)Ri 间接型 op Ri,*M (Ri)op((M))Ri op Ri,*Rj (Ri)op((Rj))Ri op Ri,*c(Rj) (Ri)op(((Rj)+c))Ri 直接操作数型 op Ri,#X (Ri)op X Ri
目标机模型 ■常备指令arc一源操作数 dst一目的操作数 指令形式 意义 举 例 LD dst,arc (arc)→dst LDR1,B(B)→R1 LDR1,#11→R1 LDR1,*(4(R0))(Ro)+4)→R1 ST arc,dst (arc)→dst STR1,B(R1)→B ADD dst,arc (dst)+(arc)→dst ADD R1,Ro(R1)+(Ro)→R1 SUB dst,arc (dst)-(arc)→dst SUB R1,T1(R1)-(T)→Ra MUL dst,arc (dst)*(arc)→dst MULR1,D(R1)*(D)→R1 DIV dst,arc (dst)/(arc)→dst DIV R1,A(R1)/(A)→R1 2025/4/3 章节目录国)
2025/4/3 7 目标机模型 ◼ 常备指令 arc—源操作数 dst—目的操作数 指令形式 意 义 举 例 LD dst,arc (arc)dst LD R1,B (B)R1 LD R1,#1 1R1 LD R1,*(4(R0))(((R0)+4))R1 ST arc,dst (arc)dst ST R1,B (R1)B ADD dst,arc (dst)+(arc)dst ADD R1,R0 (R1)+(R0)R1 SUB dst,arc (dst)-(arc)dst SUB R1,T1 (R1)-(T1)R1 MUL dst,arc (dst)*(arc)dst MUL R1,D (R1)*(D)R1 DIV dst,arc (dst)/(arc)dst DIV R1,A (R1)/(A)R1 章节目录
执行代价 ■ 衡量目标程序工作效率的指标 ◆目标程序的长短 ◆目标程序的执行时间—取决于访问内存的次数 ■一条指令执行代价 ◆定义:执行该指令所需访问内存的总次数 ◆值=该指令访问内存的次数+1(取指令访问一次内存) ■目标程序的执行代价 ◆定义:各条指令执行代价总和 ◆特点:该值越低目标程序的执行效率越高 产生目标代码时,应尽可能选用执行代价较小的指令 2025/4/3
2025/4/3 8 执行代价 ◼ 衡量目标程序工作效率的指标 ◆目标程序的长短 ◆目标程序的执行时间——取决于访问内存的次数 ◼ 一条指令执行代价 ◆定义:执行该指令所需访问内存的总次数 ◆值=该指令访问内存的次数+1(取指令访问一次内存) ◼ 目标程序的执行代价 ◆定义:各条指令执行代价总和 ◆特点:该值越低目标程序的执行效率越高 产生目标代码时,应尽可能选用执行代价较小的指令