
[ このメッセージへの返事 ]
[ 返事を書く ]
[ 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系でも疑似命令だったのかもしれないけど(よく知らない)

- Re: ぐあっ、またまた訂正 - 68user 97/9/21 07:07:39
- Re: 追加質問 - movem.l d0-d7/a0-a5,-(sp) 97/9/21 08:43:44
- Re: ん? - 68user 97/9/21 14:08:25
- Re: ん? - movem.l d0-d7/a0-a5,-(sp) 97/9/21 22:09:09
|