- 2
- 0
- 约5.15千字
- 约 13页
- 2017-05-07 发布于河南
- 举报
IBM汇编语言教程 lec11
* 第11回 テーブル操作のプログラミング演習(2) 今日の到達目標 1.テーブル中の数値の大小比較と交換 2.交換ソート(指標レジスタの利用,大小比較,データの交換,条件判定) 3.テーブル中の数値の最大値探索 4.選択ソート(複数のループ変数,条件判定) できるだけヒントを見ずにやってみよう * テーブル中の数値の大小比較と交換 ラベルTABLEで確保された8語の領域中のI番目(0≦I≦7)の数値とJ番目(0≦J≦7)の数値を算術比較し,もしI番目の方が大きければ何もせず,もしI番目の方が小さければ数値を入れ替えるプログラムを作成せよ。 なお,指標 IとJ にはそれぞれ GR1,GR2 を使用するものとし,これらに適当な値を設定して正しく動作するか確かめよ。 10 5 24 3 73 9 18 1 例えば,ラベルTABLEで確保された10語の領域に 10, 5, 24, 3, 73, 9, 18, 1 が格納されているとし,GR1(I)=1,GR2(J)=6の場合, 1番目の値(5)は6番目の値(18)よりも小さいので数値を交換する TABLE 6 10 18 24 3 73 9 5 1 0 1 2 3 4 5 6 7 番目 TABLE 1 GR2 (J) GR1 (I) * テーブル中の数値の大小比較と交換 TBLCMP START LAD GR1,1 ; GR1: 指標Iの値 LAD GR2,6 ; GR2: 指標Jの値 ; LD GR3,TABLE,GR1 ; GR3 - TABLEのI番目のデータ LD GR4,TABLE,GR2 ; GR4 - TABLEのJ番目のデータ CPA GR3,GR4 JPL SKIP ; GR3 GR4 ならばSKIPへ JZE SKIP ; GR3 = GR4 ならばSKIPへ ; ST GR3,TABLE,GR2 ; GR3 - TABLEのJ番目に格納 ST GR4,TABLE,GR1 ; GR4 - TABLEのI番目に格納 ; SKIP RET ; TABLE DC 10,5,24,3,73,9,18,1 ; 8個のデータ END * 課題11-1交換ソート (1) まずは前ページに示したTBLCMPを作成,デバッグ実行し,GR1, GR2 に設定した値応じて、適切にデータ交換が行われることを確認せよ。 (2) 上記のTBLCMPを修正して、本課題のプログラムを workb1.cas という名前で作成する。 (3) このプログラムをデバッグ実行し,実行後にラベルTABLEで確保された領域の内容が 大きい順番(降順)になっていることを確認せよ。 ラベルTABLEで確保された8語の領域に格納されている符号つき数値を“交換法”によって,大きい順番(降順)に並べ替えるプログラムを作成せよ。 交換法: テーブルの先頭から最後まで,順番に隣り合った2つの要素の大小比較を行い,降順になっていない場合,それらの要素を入れ替える。 テーブルの先頭から最後まで比較していく中で,一回でも交換があった場合は,またテーブルの先頭から繰り返して行い,一度も交換が無くなれば終了する。 10 5 24 3 73 9 18 1 左から順番に7回の比較を行い,降順でなければ交換する。 この操作を一度も交換が無くなるまで,最初から繰り返す。 ① ② ③ ④ ⑤ ⑥ ⑦ 交換があったかどうかはFLAGに記憶する ファイル名 workb1.cas * 交換ソートのアルゴリズム I=7? J ← I+1 GR3 ← TABLE(I) GR4 ← TABLE(J) WORKB1 RETURN YES NO GR3≧GR4? FLAG=0? GR3 → TABLE(J) GR4 → TABLE(I) FLAG ← 1 FLAG ← 0 I ← 0 I ← I+1 NO NO YES YES FLAGはメモリデータとしても良いし,使っていない レジスタを使用しても良い。 例えば,FLAG ? GR0, I ? GR1,J ? GR2 とする 隣り合うデータが降順になっていなかったので,データの交換を行う。このとき,FLAGを1にセットする LOOP1 LOOP2 SKIP LAST この部分は前述のTBLCMPと同様の処理をしている * 課題11-1の補足 このソートはバブルソートの一種(バブルソートには様々なバリエーションがある). 少し発展的な参考第10回のテーブル処理と同様のコーディングのほかに,下記のようなコーディング方法
您可能关注的文档
最近下载
- 2023-2024学年新疆乌鲁木齐市第一中学七年级上学期期末考试英语试卷 含答案.docx VIP
- 2025年辽宁职业学院单招(语文)测试题库新版.docx VIP
- 金属技术监督管理标准.pdf VIP
- 主变培训精品.pptx VIP
- 2025年学校培训初中地理新课标学习解读.pptx VIP
- 市中级人民法院党组2025年度民主生活会对照检查材料(五个带头).docx VIP
- 部编三上道德与法治期末复习填空选择 小学道德与法治试卷.pdf
- 广东省广州市越秀区2023-2024学年五年级上学期期末英语试题.docx VIP
- 2026年海南财金银河私募基金管理有限公司招聘备考题库参考答案详解.docx VIP
- 2020山东青岛中考《英语》试卷+答案+解析.docx VIP
原创力文档

文档评论(0)