帮下忙菜鸟问题!!!!

jy01807853 2008-10-06 09:03:36
assume cs : code_sg , ds : data_sg , ss : stack_sg

data_sg segment

db 'welcome to masm!' , 0

data_sg ends

stack_sg segment

dw 8 dup (0)

stack_sg ends

code_sg segment

start: mov dh , 8
mov dl , 3
mov cl , 2
mov ax , stack_sg
mov ss , ax
mov sp , 16
mov ax , data_sg
mov ds , ax
mov si , 0

call show_str
mov ax , 4c00H
int 21H

show_str:
push si
push cx
mov ax , 0
mov al , dl
mov bl , 2
mul bl
mov si , ax
mov al , dh
mov bl , 160
mul bl
mov bx , ax
mov di , 0
pop bp

heart_sg: mov ax , 0B800H
mov es , ax
mov cl , ds : [di]
mov es : bx[si], cl
mov ch , 00
jcxz ok
and byte ptr es : bx[si], 11011111B
inc si

mov es : bx[si], bp //问题在这..bp寄存器是16位的..他的内容有可能把es:bx[si]的内容覆盖
//一个显示的字符他是由2个部分组成..ASCII和他的属性...我这的bp只是想
//把2这个属性给es:bx[si]我调试看了bp=0002为什么覆盖了..结果还正确
//希望大家帮我解释下谢谢 ...我的表达能力比较差....
inc si
inc di
jmp short heart_sg

ok: pop cx
pop si
ret

code_sg ends

end start
...全文
88 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
BAYNPU 2008-10-06
  • 打赏
  • 举报
回复
先把它生成列表文件看看,然后再结合DEBUG一步一步跟踪调试,这样更容易理解.
jy01807853 2008-10-06
  • 打赏
  • 举报
回复
我就是在DEBUG下一步一步的调试分析出在1楼的结果..但是不确定自己是否分析正确
cnzdgs 2008-10-06
  • 打赏
  • 举报
回复
按照你的分析来修改验证一下就知道对不对了。
好的方法当然有,不过学习总是要循序渐的,不必一开始就追求最好,代码写得多了自然就知道该如何写了。
jy01807853 2008-10-06
  • 打赏
  • 举报
回复
谢谢指点 ...请问我上面的分析对吗?还是错了...还望指出...
对于这个程序...还有好的算法吗? 感觉自己写的这个太杂乱了...
cnzdgs 2008-10-06
  • 打赏
  • 举报
回复
bp寄存器是访问函数的参数和局部变量用的,尽量不要用做其它用途,(除非在极特殊情况下为了提高运行效率)。
jy01807853 2008-10-06
  • 打赏
  • 举报
回复
明白了因为我si++了一次...就移动到了下一个字节...bp寄存器的内容就覆盖到了从这个字节开始的一个字单元
后面我又使si++了一次..移动到了bp的高8位..就正好覆盖了..所以最后的结果是正确的....
我是这样分析的...如果有错误还望大家指出....
刚开始学习汇编...以后希望大家帮助啊!!!
呵呵~~~~~
程序介绍: ◎前言:这是应一个MM的要求,搞了一个类似于知识库的系统,为了方便她快速搜索到需要的文章和问题答案,因此就做成了现在这样的搜索为主的cms,里面存放了大约3000篇以上的知识量,涉及到3大类10几个层面,涵盖了衣食住行、生活娱乐、电脑知识、动植物等,甚至是三国演义和西游记全篇,这个文件这么大,就是因为数据库内容太多了!不过这样大家一下下来就能用了! ◎特点:系统用了智能拆分关键字查询和分类别查询,主要就用到3个文件,包括一个错误提示页!后台可要可不要,自己掂量掂量看看是否需要就是! ◎设计:界面比较漂亮,完全是down 别人的,因为过年了,设计师都着回家,没空帮我,不过的确很不错,希望你会和我一样喜欢!logo和head 都留空,你可以自己进images修改它,想取什么名称就取什么名称, ◎安全:因为我也要回家过年,而且这本身就只针对MM个人电脑使用,本人没怎么认真对待,(惭愧~~~)但对于普通的菜鸟,应该是没问题的,如果你是入侵高手,建议自己在检测和修缮下,如果可以,到我们的论坛发表下! ◎其他:后台可以设置这个站点的名称和网站开关,也可以屏蔽指定的IP访问,由于我是拷贝CMS的config,因为没有删除其他的内容,(再次惭愧~~,)貌似没什么影响!如果你需要本地测试,建议把数据库备份,然后删除2500篇内容,不然会影响你测试速度,尤其是服务器配置不好的同志! ◎最后:本程序是小治技术社区的坏孩子作品,感谢社区的编程高手对本人给与技术上的指点!发布此版本旨在与众网友交流学习,整理过程中较为仓促,难免有疏漏,请大家提出指正。
============================== Copyright (C) 2003-2008 Script Written by 坏孩子 程序名称: 百科知识搜索系统 Ver 1.0 BETA 版 软件类别: ASP源码 / 搜索CMS 软件语言: 简体中文 授权方式: 免费版 系统平台: ASP+Access 程序下载: http://www.baidu.com.cn/s?wd=%B0%D9%BF%C6%D6%AA%CA%B6%CB%D1%CB%F7%CF%B5%CD%B3 官方网址: http://qbar.qq.com/ah4m5a7z/ (QQ论坛) 程序开发: 小治技术 研发中心 EMAIL:xiaovshzi@126.com ============================== 小治技术QQ群:9575165 作者QQ:270612779 ============================== 默认用户:admin 密码:admin(放到网上,建议更改) 数据库链接文件:inc/mdb.asp(第一次使用请设置) 数据库文件:@@3$/bkss.mdb(放到网上,建议更改) 有些功能还没实现 代码也没有优化~~测试用的版本~~ 先放出来 大家自己研究玩吧~~等我自己把组织论坛的搞完了就开始写BETA 2版(用大后台支持) 有人也问我是否可以加了采集的功能,可恨本人才疏学浅,无法满足,希望有高手不惜赐教~~~ 界面版权:www.openv.com ============================== 程序介绍: ◎前言:这是应一个MM的要求,搞了一个类似于知识库的系统,为了方便她快速搜索到需要的文章和问题答案,因此就做成了现在这样的搜索为主的cms,里面存放了大约3000篇以上的知识量,涉及到3大类10几个层面,涵盖了衣食住行、生活娱乐、电脑知识、动植物等,甚至是三国演义和西游记全篇,这个文件这么大,就是因为数据库内容太多了!不过这样大家一下下来就能用了! ◎特点:系统用了智能拆分关键字查询和分类别查询,主要就用到3个文件,包括一个错误提示页!后台可要可不要,自己掂量掂量看看是否需要就是! ◎设计:界面比较漂亮,完全是down 别人的,因为过年了,设计师都着回家,没空帮我,不过的确很不错,希望你会和我一样喜欢!logo和head 都留空,你可以自己进images修改它,想取什么名称就取什么名称, ◎安全:因为我也要回家过年,而且这本身就只针对MM个人电脑使用,本人没怎么认真对待,(惭愧~~~)但对于普通的菜鸟,应该是没问题的,如果你是入侵高手,建议自己在检测和修缮下,如果可以,到我们的论坛发表下! ◎其他:后台可以设置这个站点的名称和网站开关,也可以屏蔽指定的IP访问,由于我是拷贝CMS的config,因为没有删除其他的内容,(再次惭愧~~,)貌似没什么影响!如果你需要本地测试,建议把数据库备份,然后删除2500篇内容,不然会影响你测试速度,尤其是服务器配置不好的同志! ◎最后:本程序是小治技术社区的坏孩子作品,感谢社区的编程高手对本人给与技术上的指点!发布此版本旨在与众网友交流学习,整理过程中较为仓促,难免有疏漏,请大家提出指正。 ============================== -小治技术QQ群:9575165

21,497

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧