|
主题 : : 实验9完成,发帖交流 [待解决] |
回复[ 6次 ]
点击[ 346次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2012-07-31 18:17 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-07-24 15:25 |
assume cs:code
data segment
db 'welcome to masm!',2h,24h,71h ;颜色
data ends
code segment
start: mov ax,data
mov ds,ax
mov bx,0
mov si,0
mov ax,0b800h
mov es,ax
mov di,11*160+64 ;第12行中间
mov cx,3
s: mov bx,0
push cx ;保护cx
mov cx,16
s0: mov ah,[si+16]
mov al,[bx]
mov es:[di],ax
inc bx
add di,2
loop s0
add di,160-32
inc si
pop cx
loop s
mov ax,4c00h
int 21h
code ends
end start | | |
|
|
|
|
[第1楼]
[ 回复时间:2012-08-01 09:53 ]
[引用]
[回复]
[ top ] | |
荣誉值:30
信誉值:4
注册日期:2012-01-01 16:36 |
mov ah,[si+16] 这条指令放到外层循环效率不是可以更高? | | |
|
|
|
|
[第2楼]
[ 回复时间:2012-08-04 08:48 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-07-24 15:25 |
嗯,确实,后来也发现了,不变的数据没必要加进循环里 | | |
|
|
|
|
[第3楼]
[ 回复时间:2012-10-17 09:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-04-29 06:45 |
assume cs:code,ds:data
data segment
db"welcome to masm!"
data ends
code segment
start: mov ax,data
mov ds,ax
mov ax,0b800h
mov es,ax
mov bx,0
mov cx,16
mov si,0
s: mov al,ds:[bx]
mov es:[si+720h],al
mov es:[si+7c0h],al
mov es:[si+860h],al
inc si
mov byte ptr es:[si+720h],02h
mov byte ptr es:[si+7c0h],24h
mov byte ptr es:[si+860h],71h
inc si
inc bx
loop s
mov ax,4c00h
int 21h
code ends
end start
我的代码,交流一下 | | |
|
|
|
|
[第4楼]
[ 回复时间:2012-11-08 00:11 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-01-01 20:45 |
|
|
|
|
|
[第5楼]
[ 回复时间:2012-11-19 16:42 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-11-15 09:42 |
你没开空间放栈的内容你就用push cx?用个dx保存就行了。 | | |
|
|
|
|
[第6楼]
[ 回复时间:2012-11-23 10:28 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-11-12 16:21 |
请问不显示第一个字符w,其他字符正常,是什么原因呢?请高人指教! | | |