. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->转移指令的原理
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  完成实验9, 分享交流一下  [待解决] 回复[ 0次 ]   点击[ 180次 ]  
caty
[帖 主]   [ 发表时间:2012-11-21 14:52 ]   [引用]   [回复]   [ top ] 
荣誉值:1
信誉值:0
注册日期:2012-11-18 11:35
用2层循环,想显示更多行就改一下第一层定义的cx即可


assume cs:code,ss:stacksg

data segment
db 'welcome to masm!'
db 00000010B,00100100B,01110001B,11000010B,01001010B,00000111B,01110001B
data ends

stacksg segment
db 16 dup(0)
stacksg ends

code segment
start:  mov ax,data
        mov ds,ax
        mov ax,0b800H
        mov es,ax
        mov ax,stacksg
        mov ss,ax
        mov sp,16

        mov bx,06e0H
        mov cx,7        ;显示7行
        mov si,0
s0:
        mov ah, 16[si] ; color
        push cx
        push si

        mov si,0
        mov di,0
        mov cx,16

s:      mov al,[si]
        mov es:64[bx].[di], ax

        inc si
        add di,2
        loop s

        add bx, 0A0H
        pop si
        inc si
        pop cx
        loop s0

mov ax,4c00H
int 21H

code ends


end start
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved