|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 小马过河 于 2012-1-16 17:13 编辑
111.rar
(3.43 KB, 下载次数: 0)
- assume cs:dmd
- sjd segment
- db 'Welcome to masm!',0
- sjd ends
- dmd segment
- cxks:mov dh,10
- mov dl,10
- mov cl,2
- mov ax,sjd
- mov ds,ax
- mov si,0
- int 7ch
- mov ax,4c00h
- int 21h
- dmd ends
- end cxks
- 程序2
- assume cs:code
- code segment
- start:mov ax,cs
- mov ds,ax ;代码段送给数据段
- mov si,offset s ;
- mov ax,0
- mov es,ax ;将地址0送给附加段
- mov di,200h ;将偏移200h送给DI
- mov cx,offset ok-offset s ;取得程序的长度 字节长度
- cld ;正向传输
- rep movsb ;以字节方式传输
- mov word ptr es:[7ch*4],200h ;将自己做的程序偏移地址送给7ch 号中中断
- mov word ptr es:[7ch*4+2],0 ;将段地址送给7ch号中断
- mov ax,4c00h ;b2 d5 00 c0
- int 21h
- s: mov ax,0
- mov al,160 ;将行宽度送给AL
- dec dh ;因为从0开始所以减一 ,行数存放在DH中
- mul dh ;所要显示的的行数
- mov di,ax ;第(bh)行
- mov ax,0
- mov al,2 ;因为字符显示占用两个字节ascii码和字符属性
- dec dl ;因为从0开始所以减一
- mul dl ;取得实际列
- mov bx,ax ;第(dl)列
- mov si,0
- mov ax,0b80h
- mov es,ax
- j: cmp byte ptr [si],0
- je ok ;等于0则跳转到OK处
- mov al,ds:[si]
- mov byte ptr es:[bx+di],al
- mov byte ptr es:[bx+di+1],cl
- add di,2
- inc si
- jmp j ;跳转继续执行
- iret ;相当于pop ip pop cs pop 标志寄存器
- ok:nop
- code ends
- end start
复制代码 [/code]我看了半天找不出哪里错了 程序报错大家帮忙看一下 |
|