- ベストアンサー
CASLII:メモリの値について
LESSON3_8_2 START ; FFFFから0FFFを論理減算 LD GR1,CFFFF ;FFFFをロード SUBL GR1,C0FFF ;FFFF-0FFF ST GR1,ANS ;結果をANSに格納 RET CFFFF DC #FFFF C0FFF DC #0FFF ANS DS 1 END 1週間で分かる集中ゼミ【CASLII】P.274より抜粋 以上のように、演習問題の解答例があったのですが下から4行目と3行目のCFFFFとC0FFFのメモリの値は存在しないのではないでしょうか?COMETIIの場合、アドレスとして0000~FFFFまでの値しか使用できないと習ったのですが…
- g_jellyfish
- お礼率81% (78/96)
- 情報処理技術者
- 回答数2
- ありがとう数1
- みんなの回答 (2)
- 専門家の回答
関連するQ&A
- CASLIIのFINについて教えて下さい
CASLIIの『FIN』とはどんなときに使うのか、どんな意味があるのか教えて下さい。下の2個の例のように、JUMPでFINに飛んだり、単なるラベルであったりしています。 ;100を初めて超える7の倍数 LAD GR1,0 LOOP CPA GR1,C1000 JPL FIN LAD GR1,7,GR1 JUMP LOOP FIN ST GR1,ANS RET C100 DC 100 ANS DS 1 END ;1000を16ビットの2進数で表した時1が立っている数 LAD GR1,0 LAD GR2,1 LOOP LD GR3,C1000 AND GR3,GR2 JZE ZEXT LAD GR1,1,GR1 NEXT SLL GR2,1 JNZ LOOP FIN ST GR1,ANS RET C1000 DC 1000 ANS DS 1 END
- ベストアンサー
- 情報処理技術者
- CASLIIのADDAとADDLの演算
次の問題があっているのかわかりません。 次のCASLIIプログラムの実行後のレジスタ(GR1,FR)とメモリ(AA,BB,CC番地) の内容を16進表示および符号付き10進表示せよ。 PGM START LD GR1,AA ADDA GR1,BB ST GR1,CC RET AA DC 32767 BB DC 1 CC DS 1 END 32767をGR1に入れて、1加算する。 だからGR1 = 32768 と思ったのですが、先生の書いた答えは -32768 でした。 PGM START LD GR1,AA ADDL GR1,BB ST GR1,CC RET AA DC #7FFF BB DC 1 CC DS 1 END #7FFFに1加算するので GR1=#8000 だと思います。 また自分で書いた板書に Arithmetic[ -32768, 32767](#8000,#7FFF) Logical[0,65535](#0000,#FFFF) とありました。 板書をとったのがだいぶ前なのでこれの意味をよく覚えていないのですが、 ADDA命令のときに扱える値の範囲は-32768,~32767 ADDL命令のときに扱える値の範囲は0~65535 ということなのでしょうか。 その場合、先ほどの問題のADDAの問題で 32767 + 1 をしたら範囲を超えてしまいます。 このような場合どうなるのでしょうか? ADDLの場合も範囲を超えてしまったらどうなるのですか? よろしくお願いします。
- ベストアンサー
- その他([技術者向] コンピューター)
- CASLII
CASLII勉強中です。 ビットマップ図形の縮小の例題を解いているのですが、 07~09行目で第15ビット目が1であるか調べという意味がわかりません。 07.08.09行目の意味を教えてください。 07行目は何をしているのでしょうか?08.09行目は1行ではなく、なぜ 1ビットの判定となるのでしょうか? 01 ZUKEI01 START 02 LD GR1,=0 03 LD GR3,=0 04 LP1 LD GR2,=0 05 LD GR4,BIGZU,GR1 06 LD GR5,=8 07 LP2 LD GR4,GR4 08 JPL SKIP 09 JZE SKIP 10 LAD GR2,1,GR2 11 SKIP SLL GR2,1 12 SLL GR4,2 13 SUBA GR5,=1 14 JPL LP2 15 SLL GR2,7 16 ST GR2,SMLZU,GR3 17 LAD GR3,1,GR3 18 LAD GR1,2,GR1 19 CPA GR1,N16 20 JNZ LP1 21 RET 22 N16 DC 16 23 BIGZU DC #F00F,#F00F 24 DC #781E,#781E 25 DC #3C3C,#3C3C 26 DC #1E78,#1E78 27 DC #0FF0,#0FF0 28 DC #0FF0,#0FF0 29 DC #07FF,#03FF 30 DC #01FF,#00FF 31 SMLZU DS 8 32 END 33
- ベストアンサー
- その他(プログラミング・開発)
- CASLIIについて
行 ラベル 命令 オペランド 01 LD GRO、=0 02 LD GR1、=10 03 L1 SUBA GR1、=1 04 JMI OWARI O5 LD GR2、DATA、GR1 06 L2 JZE L1 O7 JPL L3 08 ADDA GRO、=1 09 L3 SLL GR2、1 10 JUMP L2 11 OWARI ST GRO、ANS 12 RET 13 DATA DC ‘TOKYOOSAKA‘ 14 ANS DS 1 15 END この文で、5行のLD GR2 DATA GR1に14行目を入れるとGR2は、‘A‘が入ると思うのですが、次の70と80行目のやり方がわかりません。またGROは、最終的に何を求めているのですか?あと、9行目は、なにをしているか、教えてください。お願いします
- ベストアンサー
- 情報処理技術者
- CASLIIの問題で困っています
最近学校でCASLIIを情報の時間に習ったのですが、さっぱり意味が分かりません。 CASLIIの命令、オペランドが表している意味を詳しく解説願います。 カテゴリ間違っていたらごめんなさい! 論理演算プログラム ラベル 命令 オペランド REI1003 START LD GR1,DATA1 OR GR1,DATA2 LD GR1,DATA1 AND GR1,DATA2 LD GR1,DATA1 XOR GR1,DATA2 RET DATA1 DC #5AOF DATA2 DC #FOFO END 解答お願いします!!><
- ベストアンサー
- その他(プログラミング・開発)
- CASLの言語で聞きたいです!
CASL2000のデータ加算のプログラムで MAIN START ENTRY ENTRY LD GR0,A LD GR1,B ADDA GR0,GR1 ST GR0,ANS RET MARK DC #1234 A DC #7FFF B DC #0001 ANS DS 1 END の#1234,#7FFF,#0007さらに、ANSの意味がよくわかりません。 だれか教えてください!参考書読んでも何書いてあるのかよくわからないんです。 あまりにも初心者すぎて。。。 お願いします!それと初心者にもよくわかる参考書があれば教えてください!
- ベストアンサー
- その他(プログラミング・開発)
- CASLIIの解説
以下のような問題があり、解答がありますが理解できません。 すみませんが、どなたか解説をお願いします。 ---------------------------------------------------------- ■問題 10進数の「5×20」の結果を求め、その結果をメモリに格納するプログラムを作成せよ。ただし、「5×20」の数を他の数に置き換えた時も掛け算が行えるプログラムにすること。 ■解答 SAMPLE START LAD GR1,0 LAD GR2,1 LD GR3,=5 LOOP LD GR4,C20 AND GR4,GR2 JZE NEXT ADDA GR1,GR3 NEXT SLA GR3,1 SLL GR2,1 JNZ LOOP ST GR1,ANS RET C20 DC 20 ANS DS 1 END
- ベストアンサー
- 情報処理技術者
- CASLIIの問題が分かりません。
資格の勉強のためCASLIIの参考書を買い問題を解いてるのですが分からないので質問します。 4桁の16進文字列を入力し、それを数値に変換してメモリ上に格納するプログラム。 SAMPL16 START LD GR1,0BUF LD GR0,=1000 CALL REVESUB OUT OBUF,LEN LET OBUF DS 4 LEN DC 1 ANS DS 1 END REVESUB START PUSH 0,GR1 PUSH 0,GR2 PUSH 0,GR3 PUSH 0,GR4 LAD GR0,0 LAD GR2,0 LOOP SLL GR0,4 ;ここまでの結果を4ビット左シフト LD GR3,0,GR1 ;1文字取り出し CPL GR3,='A' JMI NEXT ADDL GR3,=9 NEXT AND GR3,C000F ADDL GR0,GR3 LAD GR1,1,GR1 LAD GR2,1,GR2 CPL GR2,=4 JMI LOOP POP GR4 POP GR3 POP GR2 POP GR1 RET C000F DC #000F END SLL GR0,4 で4ビットシフトする意味がわかりません。あとLD GR3,0,GR1で1文字だけ取り出せるのですか?取り出すのは下位からですか?
- ベストアンサー
- その他(プログラミング・開発)
- CASL2のアセンブリ(?)で質問です
CASL2のアセンブリ(?)で質問です 期末試験範囲であるCASL2に入って、とりあえずこんな問題が出るといわれました 教科書をいろいろ見ていますがちょっとよくわかりません 実際に問題とその解答をみてみると流れがわかるかと思い質問しました (1)と(2)について答えとできれば解説をお願いしたいです。助けてください! (1)整数AをN乗してGR0に格納するプログラムを作れ (オーバーフロウの時の対応等は必要なし) (2)以下のプログラムが行っていることを説明して、ループ中に生じるGR1の変化を書き連ねなさい 1 PROGRAMX START 2 LD GR0,C1 3 XOR GR1,GR1 ;GR1とGR1の排他的論理和 4 LD GR2,COUNT 5 LOOP LD GR3,GR1 6 LD GR1,GR0 7 ADDL GR0,GR3 ;GR0,GR3の論理加算 8 SUBL GR2,C1 ;GR2とCR1の論理減算 9 JNZ LOOP 10 RET 11 C1 DC 1 12 COUNT DC 2 13 END 3行目のXORは単にGR1を0にするために演算される。7,8行目はは算術演算ADDA,SUBAでも問題ないのだが、ここで扱う値が正の整数であるから効率のよいものを使った。
- ベストアンサー
- その他(プログラミング・開発)
- CASLIIの問題で、わからないものがあるので解き方と回答を教えていた
CASLIIの問題で、わからないものがあるので解き方と回答を教えていただきたいです。 入力された整数を辺の長さ(文字数)とする正方形を、文字*で出力する。 例) **** * * * * **** ↑辺の長さが4のときの正方形です。 REP3 START IN REC,LEN LD GR1,REC (a) GR1,MSK ST (b) LAD GR1,-1,GR1 ST GR1,POS OUT LN1,LEN LOOP LAD (c) CPA GR1,=0 (d) FIN CPA GR1,=1 JMI SKIP LD GR0,LN2 LD GR2,POS ST (e) OUT LN2,LEN JUMP LOOP SKIP OUT LN1,LEN FIN RET REC DS 256 LEN DS 1 POS DS 1 MSK DC #000F LN1 DC (f) LN2 DC '* ' END (a)~(f)が答えの入る場所です。 答だけでもいいので、ご教示願います。
- ベストアンサー
- その他(プログラミング・開発)
お礼
ラベルとアドレスは全く別なのですね。 ありがとうございます。