comment ;
1、编写本地程序
①把引导程序写入软盘0面0道1扇区
②把子程序写到软盘0面0道2—5扇区
2、编写软盘程序
①引导程序,从软盘中读出子程序写到0:200内存中
②子程序,菜单,重启、引导现有程序、显示时间、设置时间、清屏
其中,显示时间中按键改变颜色,设置时间中接受字符串
;
;#mode=dos
code segment
assume cs:code
start:
;写软盘的程序
mo...
- [cutebe] 相当牛,这个苦思冥想也值了。^_^ 11/30 00:00
- [parse] 如果忽略消息循环,那么操作系统加载的程序很快就执行完了,就像DOS程序一闪而过,所以CPU会空闲下来 06/30 09:04
- [游客] 楼主好厉害,挺一下! 01/19 08:43
- [游客] 很不错。 01/04 18:36
- [chinatree] 潜力贴留名,沙发。 11/08 12:58
- [youthangel] 恩,这次对了 10/30 18:56
- [fpamc] mov bx,18 在这条指令的上边是不是要加一条sub dx,dx? 10/30 10:03
- [fpamc] 对的 10/27 11:19
- [fpamc] 对的 10/27 09:00
- [fpamc] 哦,对不起,看错了。实验13也有一个7ch中断 10/27 08:52
- [游客] 现在急需一个汇编大作业。。。。。。可以么。。。。。如果今天之内看见留言 就加 1765496715 12/28 16:52
- [youthangel] 这算是对我学习的鼓励吗?谢谢!咱们这样交流就可以了 10/11 15:48
- [fpamc] 多日观察,你的学习积极性挺高的。可以来我们群了。群号:75916434 10/11 10:58
[2012-11-14 17:51] 课程设计二
阅读全文 |
评论次数(0) |
浏览次数(355) |
所属类型(汇编作业)
[2012-11-10 12:33] 手把手教你写汇编版贪吃蛇(第三期)
时隔多日,迟迟未更新。因为我遇到了难题,控制这一块不太好写(毕竟是第一次用汇编写这么大的程序)。我所谓的不好写不是我的汇编基础知识不够,而是用汇编描述算法的能力或者经验还有所欠缺。相信各位有时候也会遇到类似的情况。C或者java的语法和基础知识我都掌握了但还是写不出东西来。这就好比我们都是中国人,汉字都认识了好几千。但我们却写不出像莫言那样的文章。这就是语言表达能力和经验的问题了。要想解决这个问题,就得多写多练。量的积累,才会有质的飞跃!唉,我怎么又开始扯闲篇了……开始正题!
先解决上次我们留下的问题,第一个问题什么不是模除256或者199(如果读者不知道我在说什么,请查看...
先解决上次我们留下的问题,第一个问题什么不是模除256或者199(如果读者不知道我在说什么,请查看...
阅读全文 |
评论次数(0) |
浏览次数(322) |
所属类型(冥思苦想)
[2012-11-08 20:15] 手把手教你写汇编版贪吃蛇 第2期
Hello!欢迎大家回来,下面我们继续上期的内容。你把墙体和食物画出来了吗?不知道你画没画,反正我画了!
先说计时显示和计分显示,不知道你看了程序以后有没有发现:食物和蛇都是到不了256列—320列这个区域的。有的朋友要问了:为什么呀?我说:你先别看答案自己去测试一下,看我说的对不对,也许在测试过程中你就会发现其中的缘由。细心的读者会发现,在rec(画矩形)的子程序中,我传参用的是(ah,al)。也就是说纵坐标最大为255(在计算机中以左上角为原点,向右为X轴向下为Y轴),而屏幕是320*200的,所以256列—320列是不能用来作为蛇的活动范围的。那我们正好可以利用这60多列来显示计时和...
先说计时显示和计分显示,不知道你看了程序以后有没有发现:食物和蛇都是到不了256列—320列这个区域的。有的朋友要问了:为什么呀?我说:你先别看答案自己去测试一下,看我说的对不对,也许在测试过程中你就会发现其中的缘由。细心的读者会发现,在rec(画矩形)的子程序中,我传参用的是(ah,al)。也就是说纵坐标最大为255(在计算机中以左上角为原点,向右为X轴向下为Y轴),而屏幕是320*200的,所以256列—320列是不能用来作为蛇的活动范围的。那我们正好可以利用这60多列来显示计时和...
阅读全文 |
评论次数(0) |
浏览次数(346) |
所属类型(冥思苦想)
[2012-11-08 11:12] 手把手教你写汇编版贪吃蛇 第1期 (绝对原创)
贪吃蛇,这个游戏相信大家都玩过了。现在我们要用汇编去实现它(当然是主要功能,界面不一定很漂亮),废话少说,下面进入正题(ps:不说废话,下面还是写了一大堆,耐心读下去!)
这个游戏我们采用的是自下而上,自上而下的设计方式,界面->数据结构->控制(好像是MVC的设计模式),这个分析过程很重要。避免后期胡子眉毛一把抓。忘了,最重要的一点了。开发环境:masmplus.运行环境:winXP或者dos。Win7不可以,因为win7不支持控制台全屏
1、 界面(徒有虚表,核心的在黑屏后面)
从界面上讲,我们要显示的有:①蛇②墙体(障碍物)③食物④计时显示⑤分数显示
好,我们又把任务细化了。先分...
这个游戏我们采用的是自下而上,自上而下的设计方式,界面->数据结构->控制(好像是MVC的设计模式),这个分析过程很重要。避免后期胡子眉毛一把抓。忘了,最重要的一点了。开发环境:masmplus.运行环境:winXP或者dos。Win7不可以,因为win7不支持控制台全屏
1、 界面(徒有虚表,核心的在黑屏后面)
从界面上讲,我们要显示的有:①蛇②墙体(障碍物)③食物④计时显示⑤分数显示
好,我们又把任务细化了。先分...
阅读全文 |
评论次数(1) |
浏览次数(654) |
所属类型(冥思苦想)
[2012-10-28 14:54] 实验十七和检测点17.1
实验十七
;这个实验需要用虚拟机,建议装个vmware
assume cs:code
code segment
start:
;安装程序
push cs
pop ds
mov si,offset begin
mov ax,0
mov es,ax
mov di,20...
;这个实验需要用虚拟机,建议装个vmware
assume cs:code
code segment
start:
;安装程序
push cs
pop ds
mov si,offset begin
mov ax,0
mov es,ax
mov di,20...
阅读全文 |
评论次数(2) |
浏览次数(616) |
所属类型(汇编作业)
[2012-10-27 09:38] 实验十六
comment ;
这个程序是学王爽老师的汇编以来第一次遇到难题,而且还无从下手。
debug了数次无果,最后参考了一下其他网友的经验,才得知以下知识点
1、数据标号table在编译时被赋予的偏移地址是相对于安装程序的,所以把它放在整个程序的开头
2、同时修改7ch的中断向量表时,(cs)=20h,(ip)=0,这样方便根据偏移找到table
;
assume cs:code
code segment
;----------------重写中断--------------
...
这个程序是学王爽老师的汇编以来第一次遇到难题,而且还无从下手。
debug了数次无果,最后参考了一下其他网友的经验,才得知以下知识点
1、数据标号table在编译时被赋予的偏移地址是相对于安装程序的,所以把它放在整个程序的开头
2、同时修改7ch的中断向量表时,(cs)=20h,(ip)=0,这样方便根据偏移找到table
;
assume cs:code
code segment
;----------------重写中断--------------
...
阅读全文 |
评论次数(1) |
浏览次数(641) |
所属类型(汇编作业)
[2012-10-27 08:44] 第十六章检测点
(1)
assume cs:code
code segment
a dw 1,2,3,4,5,6,7,8
b dd 0
start:
mov si,0
mov cx,8
s:
mov ax,a[si]
add a[10h],ax
...
assume cs:code
code segment
a dw 1,2,3,4,5,6,7,8
b dd 0
start:
mov si,0
mov cx,8
s:
mov ax,a[si]
add a[10h],ax
...
阅读全文 |
评论次数(1) |
浏览次数(601) |
所属类型(汇编作业)
[2012-10-26 17:18] 检测点15.1
(1)
pushf
call dword ptr ds:[0]
(2)
修改中断向量表时时,注意屏蔽中断...
pushf
call dword ptr ds:[0]
(2)
修改中断向量表时时,注意屏蔽中断...
阅读全文 |
评论次数(1) |
浏览次数(305) |
所属类型(汇编作业)
[2012-10-26 17:13] 第十四章检测点
comment ;
检测点14.1
(1)
mov al,2
out 70h,al
in al,71h
(2)
mov al,2
out 70,al
mov al,0
out al,71h
;检测点14.2
;
assume c...
检测点14.1
(1)
mov al,2
out 70h,al
in al,71h
(2)
mov al,2
out 70,al
mov al,0
out al,71h
;检测点14.2
;
assume c...
阅读全文 |
评论次数(1) |
浏览次数(268) |
所属类型(汇编作业)
[2012-10-26 16:43] 第十三章检测点
检测点13.1
comment ;
1、转移地址在bx中,所以最大偏移位移是ffff
2、编写新的7ch中断
;
assume cs:code
data segment
db 'conversation',0
data ends
code segment
start:
push cs
pop ds
...
comment ;
1、转移地址在bx中,所以最大偏移位移是ffff
2、编写新的7ch中断
;
assume cs:code
data segment
db 'conversation',0
data ends
code segment
start:
push cs
pop ds
...
阅读全文 |
评论次数(3) |
浏览次数(601) |
所属类型(汇编作业)