Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2707531
  • 博文数量: 416
  • 博客积分: 10220
  • 博客等级: 上将
  • 技术积分: 4193
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-15 09:47
文章分类

全部博文(416)

文章存档

2022年(1)

2021年(1)

2020年(1)

2019年(5)

2018年(7)

2017年(6)

2016年(7)

2015年(11)

2014年(1)

2012年(5)

2011年(7)

2010年(35)

2009年(64)

2008年(48)

2007年(177)

2006年(40)

我的朋友

分类: C/C++

2008-09-13 16:41:39

assume cs:code,ds:data
data segment
    db "welcome to asm!"
data ends

code segment
start:
    mov ax,data
    mov ds,ax
    mov si,0
    mov bx,0
    mov ax,0b800h
    mov es,ax
    mov di,12*160+32*2
    mov cx,15
  s:mov al,[si]
    mov byte ptr es:[di],al
    inc si
    inc di
    mov byte ptr es:[di],2h
    inc di
    loop s
   
   
    mov ax,4c00h
    int 21h
code ends
end start

***************显示多行***********************
assume cs:code,ds:data
code segment
data segment
 db 5 dup ('welcome to masm!')
 
data ends
start:
 mov   ah,0fh  
 int   10h  
 
 mov ax,data    
 mov ds,ax      ;存放数据
 mov ax,0b800h       ;注意:在asm文件中的数据不能以字母开头,所以需要在前面加0
 add ax, bx
 mov es, ax
 
 mov bp, 0
 mov bx, 0
 mov cx, 5
outer: 
 mov dx, cx  ;保存外循环的次数
 mov cx, 16  ;内循环的次数
 mov di,160*12+30*2 ;开始时显示位置
 mov si, 0
 
 next: mov al,[bx + si]
 mov es:[bp + di],al
 mov byte ptr es:[bp+di+1], bl  ;色彩属性
 inc si
 add di,2
 loop next
 
 add bx, 16  ;下一行数据偏移量
 add bp, 160 ;下一行数据位置偏移量
 mov cx, dx  ;还原外循环的次数
loop outer
 mov ah,4ch
 int 21h
code ends
end start
阅读(1007) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~