基本情報午後h21春問1アセンブラ
Q&A
基本情報午後h21春問1アセンブラ
解き方がわからない、説明文が何を伝えたいかわからない
↓問1の説明文
〔プログラム1の説明〕
リストに対して,要素を挿入又は削除する副プログラム LPROC である。リストの構造を図1に示す。
①リストは一つ以上の要素をもち,一つの要素は連続する2語から成る。1語目には次の要素の先頭アドレス(図中では矢印で表す)が,2語目にはその要素の保持する値が格納される。要素は主記憶の0番地以外に配置され,最後の要素の1語目には,次の要素がないことを表すために,0が設定される。
②ROOT は1語から成り,最初の要素(要素1)の先頭アドレスが格納される。
③主プログラムは,表1に示す値を各レジスタに設定して LPROC を呼ぶ。
nは操作対象とする要素が,リストの先頭から何番目かを指定する正の整数である。
要素の挿入の場合は,その要素が先頭からn番目となる位置(要素nの直前)に挿入される。削除の場合は,先頭からn番目の要素(要素n)が削除される。
nとして,リストの現在の要素の個数Nよりも大きい値が与えられたとき,LPROC は何もせずに呼出し元に戻る。
④LPROC は,要素を挿入又は削除するとき,それぞれ別に用意された副プログラム EGET 又は EFREE を呼ぶ。
⑤EGET は,挿入される要素に必要な領域を記憶管理領域から割り当てるために呼び出され,新たに割り当てられた,連続する2語から成る領域の先頭アドレスを GR2 に設定して呼出し元に返す。
⑥EFREE は,削除された要素の先頭アドレスを GR2 に設定して呼び出され,当該要索が使用していた領域を記憶管理領域に戻す。
⑦副プログラム EGET から戻るとき,GR2 以外の汎用レジスタの内容は元に戻す。
⑧副プログラム EFREE から戻るとき,汎用レジスタ GR1~GR7 の内容は元に戻す。
⑨副プログラム LPROC から戻るとき,汎用レジスタ GR1~GR7 の内容は元に戻す。
疑問点
リストに対して,要素を挿入又は削除する副プログラムLPROCの構造を示すらしんですがLPROCってなんですか?
リストは一つ以上の要素をもち,一つの要素は連続する2語から成るらしいですけど連続する2語からなったらどうなるんですか?
2語目にはその要素の保持する値が格納される。要素は主記憶の0番地以外に配置され,最後の要素の1語目には,次の要素がないことを表すために,0が設定されるらしんですけど、なんで2語目にはその要素の保持する値が格納されるんですか?要素ってどれが要素なんですか?次の要素がないことを表すために,0が設定されるのはなぜ?
ROOTは1語から成り,最初の要素(要素1)の先頭アドレスが格納されるらしいんですけど、なぜROOTは一語からなるんですか?最初の要素ってなんですか?どれに対していってるんですか?
主プログラムは,表1に示す値を各レジスタに設定してLPROCを呼のはなぜなんですか?問題に関係あるんですか?
nは操作対象とする要素が,リストの先頭から何番目かを指定する正の整数であるっていってますけど正の整数ってなんですか?nの操作対象とする要素ってなんですか?
わからないことだらけです