Re: 追加質問



[ このメッセージへの返事 ] [ 返事を書く ] [ home.html ]



投稿者: 68user @ oryo.inforyoma.or.jp on 97/9/21 06:57:13

In Reply to: Re: ありがとうございます

posted by movem.l d0-d7/a0-a5,-(sp) @ h193.p066.iij4u.or.jp on 97/9/21 06:43:57

> オフセットは符号付き16bitなので-32768〜32767までです。

あ、なるほど。オイラって基礎がわかってないなぁ…

あと追加質問です。

int *base_addr = malloc( ( size_t ) 2000 );

for ( int h=0 , int *p=base_addr+100 ; p
��h += *p;
}

は、

# $19 = base_addr

�晦晦�add $8,$0,$0 �晦晦晦�# h = 0
�晦晦�addi $20,$19,1000*4 ��# $19 = base_addr + 1000 * sizeof(int)
Loop:
�晦晦�lw $9,0($19)�晦晦� # $9 = base_addr + $19
�晦晦�add $8,$8,$9�晦晦� # h += $9
�晦晦�addi $19,$19,4�晦� # $19 += sizeof(int)
�晦晦�bne $19,$20,Loop

こんな感じになるんでしょうか?


# 今日は追加とか訂正が多いなぁ(^^;

ところで、

> movem.l d0-d7/a0-a5,-(sp)

こんな高機能な命令ってRISCでは普通は存在しないんですかね?
68000系でも疑似命令だったのかもしれないけど(よく知らない)