CASLII:メモリの値について

このQ&Aのポイント
  • CASLIIでのメモリの値についての質問です。
  • 特定の演習問題の解答例に疑問があります。
  • COMETIIで習ったアドレスの範囲との矛盾が気になっています。
回答を見る
  • ベストアンサー

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までの値しか使用できないと習ったのですが…

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

CFFFFとC0FFFは、単なるラベルですので問題有りません。 (実際のアドレスがどこに割り当てられるかわ分かりませんが、0000~FFFFまでに納まります) C は、CONST (定数)の意だと思います。

g_jellyfish
質問者

お礼

ラベルとアドレスは全く別なのですね。 ありがとうございます。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

CONST→CONSTANT に訂正

関連する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)が答えの入る場所です。 答だけでもいいので、ご教示願います。

専門家に質問してみよう