assume cs:codeseg ,ds:dataseg
dataseg segment
data db 'abcdefg'
len db '0'
dataseg ends
codeseg segment
start :
;设置数据段地址和附加段地址
mov ax,dataseg
mov ds,ax
mov ax,0b800h
mov es,ax
;设置原地址和目标地址
mov ax,0
mov si,ax
mov ax,07b0h
mov di,ax
mov cx,offset len
p:
;显示小小写的
mov al, byte ptr ds:[si]
mov byte ptr es:[di],al
inc di
mov byte ptr es:[di],0CFh
;转换大写
and al ,011011111b
mov byte ptr ds:[si],al
;显示大写的
mov byte ptr es:[di+0fh],al
mov byte ptr es:[di+010h],0CFh
inc di
inc si
loop p
mov ax,04c00h
int 021h
codeseg ends
end start