|
主题 : : 实验9.呼!不管做的怎么样终于自己写了一个(汗,能用的都用上了),真是即气愤又欣慰呀。 [待解决] |
回复[ 8次 ]
点击[ 496次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2011-05-08 16:44 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-05-03 21:02 |
如题,终于调通了,废话不多说了,亮程序 :
assume cs:code,ds:data,ss:stack
data segment
db 'welcome to masm!'
db 02h,24h,71h
data ends
stack segment
db 16 dup(0)
stack ends
code segment
start:mov ax,stack
mov ss,ax
mov sp,16
mov ax,data
mov ds,ax
mov ax,0b800h
mov es,ax
mov di,0
mov bx,7c0h
mov cx,3
s:push cx
mov cx,16
mov bp,0
mov si,0
mov ah,10h[di]
s0:mov al,ds:[bp]
mov es:[bx][si],ax
inc bp
add si,2
loop s0
pop cx
inc di
add bx,0a0h
loop s
mov ax,4c00h
int 21h
code ends
end start | | |
|
|
|
|
[第1楼]
[ 回复时间:2011-07-01 16:57 ]
[引用]
[回复]
[ top ] | |
荣誉值:1
信誉值:0
注册日期:2011-05-30 14:33 |
hehe,所见略同!不知道有没有人不用loop用跳转做出来的没? | | |
|
|
|
|
[第2楼]
[ 回复时间:2011-09-01 23:16 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-08-21 16:44 |
呵呵 不好意思 我有点笨 我看了几遍你的程序 我也没看出背景色来呀?你真的调试成功了吗?? | | |
|
|
|
|
[第3楼]
[ 回复时间:2011-09-02 00:24 ]
[引用]
[回复]
[ top ] | |
荣誉值:118
信誉值:0
注册日期:2011-07-07 22:59 |
|
|
|
|
|
[第4楼]
[ 回复时间:2011-09-05 19:20 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-09-05 09:58 |
ss:stack
mov ax,stack
mov ss,ax
mov sp,16
似乎完全没必要啊 | | |
|
|
|
|
[第5楼]
[ 回复时间:2011-09-18 16:17 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-09-05 20:15 |
其实就是蛮简单的一维数组复制的说。还是实验七那个结构体比较难。
分享一下我的:
assume cs:code
data segment
db 'welcome to debug !!!'
data ends
code segment
start:
mov ax,0b800h
mov es,ax
mov bx,7c0h
mov ax,data
mov ds,ax
mov cx,20
mov di,0
s1:
mov al,ds:[di];take data
mov si,di
add si,si
mov ah,0cah
mov es:[bx+si],ax
add di,1
loop s1
mov ax,4c00h
int 21h
code ends
end start | | |
|
|
|
|
[第6楼]
[ 回复时间:2011-09-21 10:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-08-20 08:45 |
|
|
|
|
|
[第7楼]
[ 回复时间:2011-09-21 13:06 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-09-19 15:57 |
assume cs:code
data segment
s db 'welcome to debug !!!'
data ends
code segment
assume cs:code,ds:data
start:
mov ax,0b800H ;显示缓冲的第一页地址
mov es,ax ;将其装入es
mov ax,data ;获取数据
mov ds,ax ;装入ds
mov cx,40 ;循环次数
mov di,0 ;递增
l:
mov al,ds:[di] ;获取数据装入al
mov ah,00caH ;ah装入显示样式 绿底红字
mov si,di
add si,si ;计算下一次地址
mov es:[si],ax ;数据放入显示缓冲
inc di ;增1
dec cx ;减1
loop l
mov ax,4c00h
int 21h
code ends
end start | | |
|
|
|
|
[第8楼]
[ 回复时间:2011-11-14 21:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-08-26 16:03 |
|