IT.pdf IT-s.pdf IT-e.pdf 記事一覧 |
フローチャート |
IT-e.pdf に 文字列の扱いに関する説明を追加しました.
メモ:(1) サンプルプログラムの処理内容は上図のようなフローチャートで表わすと分かり易くなりますが IT-e.pdf では動作原理の理解という点に集中して手抜きします.
(2) 解答例は C プログラムの
char c, s[] = "HELLO."; int found = 1, i = 0;
while(1){
c = s[i]; i++;
if(c == 'E') break;
if(c != '.'){found = 0; break;}
}
にほぼ対応しています.これに対して
LDA R1, 0
LOOP LD R0, STR, R1
LDA R1, 1, R1
を
LDA R1, STR
LOOP LD R0, 0, R1
LDA R1, 1, R1
に変更したプログラムは C の
char s[] = "HELLO.", *p = s; int found = 1;
while(1){
c = *p; p++;
if(c == 'E') break;
if(c != '.'){found = 0; break;}
}
にほぼ対応します.
(3)「LD R2, STR, R1」「LDA R0, -'E', R2」ではフラグは変わりません.