编程范式9 笔记 伪汇编语言

来源:互联网 发布:网络大学专升本 编辑:程序博客网 时间:2024/06/03 11:04

example 1

int i;int j;i=10;j=i+7;j++;

i,j存在stack中

i=10;
j=i+7;

M[R1+4]=10;//store operationR2=M[R1+4];//load operationR3=R2+7;//ALU operationM[R1]=R3;//store

j++

R2=M[R1];R2=R2+1;M[R1]=R2;

example 2

int i;short s1;short s2;i=200;//M[R1+4]=200;s1=i;//R2=M[R1+4];M[R1+2]=.2 R2;s=s1+1;//R2=.2 M[R1+2];R3=R2+1;M[R1]=.2 R3;

example 3

int arr[4];int i;for(i=0;i<4;i++){    arr[i]=0;}i--;
M[R1]=0;R2=M[R1];BGE(R2,4,PC+40)//Branch on Greater or Eaqual toR3=M[R1];R4=R3*4;R5=R1+4;R6=R4+R5;M[R6]=0R2=M[R1];R2=R2+1;M[R1]=R2;JMP PC-40//调到第2

example 4

R1=M[R2+4];R1=1000;R3=R6*R10;M[R1-20]=R19;

struct

struct fraction{    int num;    int denum;}struct fraction pi;pi.num=22;//M[R1]=22;pi.denum=7;//M[R1+4]=7;((struct fraction*)&pi.denum)->denum=451;//M[R1+8]=451