1. 程式人生 > >王爽《組合語言》第三版-實驗9 根據材料程式設計

王爽《組合語言》第三版-實驗9 根據材料程式設計

assume cs:code,ds:data
data segment ;在資料段定義字串
	db 'Welcome to masm!'
data ends

code segment
start:  mov ax,data
	mov ds,ax
	mov ax,0b800h
	mov es,ax   ;使用ds和es暫存器作為段暫存器
	   
	mov si,0
	mov bx,0
	mov bp,07b0h ;由計算出的字串所在位置給bp賦值
	mov cx,16    ;16個字元資料故loop16次
	   
    s:  mov al, [bx]                  ;以下采用相對基址變址定址方式
	mov es:[bp+si], al            ;經計算得第1行偏移地址應為b87b0h至b87cfh
	mov es:[bp+si+0a0h], al       ;        第2行偏移地址應為b8850h至b886fh
	mov es:[bp+si+140h], al       ;        第3行偏移地址應為b88f0h至b890fh
		
	mov al, 00000010b             ;分別給三行設定屬性位元組
	mov es:[bp+si+1], al
	mov al, 00100100b
	mov es:[bp+si+0a0h+1], al
	mov al, 01110001b
	mov es:[bp+si+140h+1], al
		   
	inc bx
	add si,2      ;每個字元佔2個位元組
   loop s     	   
mov ah,4ch
int 21h
code ends
end start
                

執行結果如下