- ベストアンサー
CASLのビットマップについて
CASLのビットマップで、元の図を右反転させたいのですがどのようなプログラムにしたらいいのでしょうか??また180度回転させるにはどうしたらいいのでしょう?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>16×16の図形を左に90度回転する、というものがあり ということだったら、 2回適用すればいいような気がします。 直接やるという話だったら L1:16ビット(1語) L2:16ビット(1語) L3:16ビット(1語) ~ L14:16ビット(1語) L15:16ビット(1語) L16:16ビット(1語) L1~L16を反転(逆順に)し、それぞれの語をビット反転すればいいですよね。 ビット反転は、 元のビットを1ビット取り出しながら右論理シフトして そのビットを反転先ビットとして設定しながら左シフトしていけばいいと思います。
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
CASLの仕様で、図を描けるような装置やそのメモリとなるようなビットマップ構造については説明されていませんので、 多分、何らかの問題としての設定としてそのようなことが言われているのではないかと思いますが、 その設定(前提)を補足して下さい。 勘違いコメントだったらすみません。
補足
お返事ありがとうございます。え~と、16×16の図形を左に90度回転する、というものがあり、私はそれをさらに回転させるにはどうしたらいいのか知りたいです。プログラムは、 SMP1031 START LAD GR1,15 LOOP ST GR2,ZUKEI2,GR1 SUBA GR1,=1 JPL LOOP JZE LOOP LAD GR1,0 LD GR2,=#8000 LOOP1 LD GR3,=#8000 LD GR4,ZUKEI1,GR1 LAD GR5,15 LOOP2 LD GR6,GR4 AND GR6,GR3 JZE STEP LD GR7,ZUKEI2,GR5 ADDL GR7,GR2 ST GR7,ZUKEI2,GR5 STEP SRL GR5,=1 SUBA GR5,=1 JPL LOOP2 JZE LOOP2 SRL GR2,1 LAD GR1,1,GR1 CPA GR1,=16 JNZ LOOP1 RET ZUKEI1 DC #FFF0 #FFF8 #7FFC #780E : : ZUKEI2 DS 16 ***リテラルのDC行自動生成*** =1 DC 1 =#8000 DC #8000 =16 DC 16 END です。ZUKEI2でビットマップを出すと、ZUKEI1の図が左回転しています。もう1度左回転させれば計180度回転になるのですが…
お礼
お返事ありがとうございます。 直接やる場合の、L1~L16を反転させるというのはどうしたらいいのでしょう??元のプログラムに足せばいいのでしょうか?
補足
質問しといてすいません。もしかしたら、私の行為はこのサイトの違反行為かも知れないのでここで締め切ります。今までありがとうございました!!