|
主题 : : 实验9 感觉程序数据部分站内存太多了 怎么优化一下? [待解决] |
回复[ 3次 ]
点击[ 257次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2010-11-17 23:26 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-04-08 17:43 |
assume cs:codesg,ds:datasg,ss:stacksg
datasg segment
db 992 dup (0)
db 'welcome to masm!'
db 992 dup (0)
datasg ends
stacksg segment
dw 8 dup (0)
dw 0200H,0007H,2400H,0003H,7100H,0006H,0700H,992,0,0
stacksg ends
codesg segment
start: mov ax,datasg
mov ds,ax
mov ax,0B800H
mov es,ax
mov ax,stacksg
mov ss,ax
mov sp,16
mov bx,0
mov si,0
mov ax,0700H
mov cx,992
s: mov al,[bx]
mov es:[si],ax
inc bx
add si,2
loop s
pop ax
pop cx
jcxz s1
jmp short s
s1: mov ax,4c00H
int 21H
codesg ends
end start | | |
|
|
|
|
[第1楼]
[ 回复时间:2010-11-22 16:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-11-19 22:48 |
assume cs:codesg,ds:datasg
datasg segment
db 'welcom to masm!'
datasg ends
codesg segment
start: mov ax,datasg
mov ds,ax
mov bx,0
mov si,0
mov ax,0b800h ;定义段地址,把ds的数据按要求写进去
mov es,ax
mov cx,15
s: mov al,ds:[bx] ;低位放字母
mov es:720h.[si],ax ;取11排64列
mov ah,02h ;高位放属性,绿色
mov es:720h.[si],ax
mov al,ds:[bx]
mov es:7c0h.[si],ax ;取12排64列
mov ah,24h ;绿底红色
mov es:7c0h.[si],ax
mov al,ds:[bx]
mov es:860h.[si],ax ;取13排64列
mov ah,71h ;白底蓝色
mov es:860h.[si],ax
inc bx
add si,2
loop s
mov ax,4c00h
int 21h
codesg ends
end start
这是我刚写的,用debug调试可以看到相应结果,欢迎大家交流 | | |
|
|
|
|
[第2楼]
[ 回复时间:2010-12-06 01:05 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-12-04 20:54 |
|
|
|
|
|
[第3楼]
[ 回复时间:2010-12-06 01:07 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-12-04 20:54 |
|
|