王爽 汇编语言程序设计 实验9 (Assembly Language Study)

自己写的,可以实现练习题的要求,而且个人感觉比网上常见的答案还精炼一些。

assume  cs: codesg,  ds: data
data segment
    db 
' welcome to masm! '
    db 
00000010B , 00100100B , 01110001B  
    dw 0b86eh,0b878h,0b882h  
data ends
 
codesg segment
start:   
    
mov  cx,  3     
    
s1:       
        
mov  ax, data  ; set data address
         mov  ds, ax         
        
mov  si, cx    ; set line in ds
         mov  ah,  data: [ 15 +si]   ; get font 00000010B,00100100B,01110001B
         ADD  si,cx     ;  Set si to be 6,4,2
         mov  ss,  data: [ 17 +si]  ; get line position of 0b86eh,0b878h,0b882h         push  cx
        
mov  cx,  16
        
mov  bx,  0
        
mov  si,  0    
        
s:      
            
mov  al,  ds: [bx] ; individual char from 'welcome to masm!' 
             mov   ss: [si+ 40 ], ax  ;  this DX should 'line position'    
             inc  bx
            
add  si,  2
        loop s
        
pop  cx 
    loop  s1
    
mov  ax, 4c00h
    
int  21h
codesg ends

end start 

转载于:https://www.cnblogs.com/yangbin990/archive/2011/08/02/2125434.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值