←練習問題へ :  INDEX :  次の章へ→


2-5.練習問題 解答

  DATA1の内容(ABCD)をDATA2にコピーして、DATA2を表示するプログラムを作りたい。下記の空欄を埋めよ。(ただし、DATA1とDATA2の後ろにある24hは気にしなくても良い)
START:
	mov	si,offset DATA1
	mov	di,offset DATA2
	mov	al,[si]
	mov	[di],al

	mov	al,[si+1]
	mov	[di+1],al

	mov	al,[si+2]
	mov	[di+2],al

	mov	al,[si+3]
	mov	[di+3],al

	mov	al,[si+4]
	mov	[di+4],al

;	mov	ax,[si]
;	mov	[di],ax

;	mov	ax,[si+2]
;	mov	[di+2],ax

;	mov	al,[si+4]
;	mov	[di+4],al
;	↑これでもよい

	mov	ah,9               ;
	mov	dx,offset DATA2    ; DATA2を表示する
	int	21h                ;

	mov	ax,4c00h
	int	21h                ; 終了

DATA1	db	'ABCD',24h
DATA2	db	'0000',24h
AH=9のときINT 21hを実行するとDXのアドレスから24h('$')があるまで文字列を表示する。

←練習問題へ :  INDEX :  次の章へ→