回答編集履歴

3 fix description

yohhoy

yohhoy score 6079

2015/03/05 11:57  投稿

ラベル`COUNT_INC`~`COUNT_INC_END`間は、「文字`'0'`~`'9'`の列からなる10進数に対して+1を計算する」処理になっています。(ように**見えます**。実動作チェックはしていませんので、バグの有無はご自身でご確認ください。)
例:"123"なら"124"に、"49"なら"50"に、"99"なら"100"に更新
各ラベル間で行われている処理の概要を書き下します。
```
COUNT_INC:
; 対象桁を一番右に設定
INC_DIGIT:
; もし全桁を走査済みならINC_DIGIT_1へ
; もし対象桁が文字'9'でなければ、INC_DIGIT_2へ
; 対象桁に文字'0'を代入  
; 対象桁をひとつ左にずらす
; INC_DIGITへもどる
INC_DIGIT_1:
; 最初の桁数分の文字'0'を代入
; 1桁増やして最左位置に文字'1'を代入
; COUNT_INC_ENDへ
INC_DIGIT_2:
; 対象桁の文字コードを+1する
COUNT_INC_END:
```
2 refine

yohhoy

yohhoy score 6079

2015/03/03 18:55  投稿

ラベル`COUNT_INC`~`COUNT_INC_END`間は、「文字`'0'`~`'9'`の列からなる10進数に対して+1を計算する」処理になっています。(ように**見えます**。実動作チェックはしていませんので、バグの有無はご自身でご確認ください。)
以下、各ラベル間で行われている処理概要を書き下します。
例:"123"なら"124"に、"49"なら"50"に、"99"なら"100"に更新
各ラベル間で行われている処理の概要を書き下します。
```
COUNT_INC:
; 対象桁を一番右に設定
INC_DIGIT:
; もし全桁を走査済みならINC_DIGIT_1へ
; もし対象桁が文字'9'でなければ、INC_DIGIT_2へ
; 対象桁をひとつ左にずらす
; INC_DIGITへもどる
INC_DIGIT_1:
; 最初の桁数文の文字'0'を代入
; 最初の桁数分の文字'0'を代入
; 1桁増やして最左位置に文字'1'を代入
; COUNT_INC_ENDへ
INC_DIGIT_2:
; 対象桁の文字コードを+1する
COUNT_INC_END:
```
1 refine

yohhoy

yohhoy score 6079

2015/03/03 18:51  投稿

ラベル`COUNT_INC`~`COUNT_INC_END`間は、「文字`'0'`~`'9'`の列からなる10進数に対して+1を計算する」処理」になっています。(ように見えます。実動作チェックはしていませんので、バグの有無はご自身でご確認ください。)
ラベル`COUNT_INC`~`COUNT_INC_END`間は、「文字`'0'`~`'9'`の列からなる10進数に対して+1を計算する」処理になっています。(ように**見えます**。実動作チェックはしていませんので、バグの有無はご自身でご確認ください。)
以下、各ラベル間で行われている処理概要を書き下します。
```
COUNT_INC:
; 対象桁を一番右に設定
INC_DIGIT:
; もし全桁を走査済みならINC_DIGIT_1へ
; もし対象桁が文字'9'でなければ、INC_DIGIT_2へ
; 対象桁をひとつ左にずらす
; INC_DIGITへもどる
INC_DIGIT_1:
; 最初の桁数文の文字'0'を代入
; 1桁増やして最左位置に文字'1'を代入
; COUNT_INC_ENDへ
INC_DIGIT_2:
; 対象桁の文字コードを+1する
COUNT_INC_END:
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る