- [游客] ddd 08/29 20:42
- [masmaster] 牛肉·呀 07/18 22:32
- [游客] 这两天编了个贪吃蛇和俄罗斯方块,有兴趣的一起研究下,QQ:624759860 07/18 22:27
- [游客] 都是牛人啊! 06/30 12:21
- [litie12580] 什么时候才能练到这么厉害啊 06/19 18:06
- [游客] 各位大哥,你们都太牛了吧!小弟学了一年的计算机,现在感觉什么也编不出来,哎,就只能编个课设之类的东西 06/14 20:07
- [游客] 各位大哥,你们都太牛了吧!小弟学了一年的计算机,现在感觉什么也编不出来,哎,就只能编个课设之类的东西 06/14 20:06
- [yoyou] 拜读!! 05/29 21:41
- [ruixiang] 牛人,可以注释吗?佩服 05/18 17:30
- [09211029] 哪一天我也编过游戏出来,哈哈 05/04 13:38
- [游客] 楼上** 06/22 15:23
- [游客] 你好。我现在有个十分紧急的问题。你可以帮我解决下不。用汇编写一段程序。题目是可编程作息时间控制器程序 04/07 20:40
[2010-01-14 16:46]
扫雷
STACK SEGMENT STACK
DB 10H DUP (0)
STACK ENDS
DATA SEGMENT
MESSAGE DB "YOU ARE BOMED !! $"
MESSAGE1 DB "GAME OVER !! $"
MESSAGE3 DB "THE REMAIN BOME IS : $"
MESSAGE4 DB "WOULD YOU LIKE TO START AGAIN? (Y\N) $"
XX0 DB 0,0,0,0,0,0,0
XX1 DB 0,0,0,0,0,1,0
XX2 DB 0,1,0,0,0,1,0
XX3 DB 0,1,0,0,0,1,0
XX4 DB 0,1,0,0,0,1,0
XX5 DB 0,1,0,0,0,1,0
XX6 DB 0,0,0,0,0,0,0
ADDR1 DW XX0,XX1,XX2,XX3,XX4,XX5,XX6
XXX0 DB 0,0,0,0,0,0,0
XXX1 DB 0,0,0,0,0,0,0
XXX2 DB 0,0,0,0,0,0,0
XXX3 DB 0,0,0,0,0,0,0
XXX4 DB 0,0,0,0,0,0,0
XXX5 DB 0,0,0,0,0,0,0
XXX6 DB 0,0,0,0,0,0,0
ADDR2 DW XXX0,XXX1,XXX2,XXX3,XXX4,XXX5,XXX6
XY DB 05H
DB ?
DB 05H DUP (?)
D1 DB 0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
STA:
MOV AX,STACK
MOV SS,AX
MOV AX,DATA
MOV DS,AX
START1:
CALL XIANSHI
MOV CX,31H
MOV DI,OFFSET XXX0
MOV SI,OFFSET XX0
LP5:
MOV AL,[SI]
MOV BYTE PTR [DI],AL
INC SI
INC DI
LOOP LP5
START:
MOV DX,OFFSET XY
MOV AH,0AH
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
CMP BYTE PTR XY[2],"Y"
JNE NEXT13
MOV AL,XY[4]
MOV SI,12*160
S1:
ADD SI,160
DEC AL
CMP AL,30H
JNE S1
MOV AL,XY[3]
MOV AH,00H
SUB AL,30H
ADD AL,AL
MOV BX,AX
MOV BYTE PTR ES:[SI+40*2+BX],"Y"
XOR BX,BX
MOV BL,BYTE PTR XY[3]
SUB BL,30H
MOV CL,BYTE PTR XY[4]
SUB CL,30H
MOV SI,OFFSET ADDR2
MOV CH,00H
SHL CX,01H
ADD SI,CX
MOV DI,[SI]
MOV BYTE PTR [DI+BX],00H
JMP START
NEXT13:
CMP BYTE PTR XY [2],"Q"
JNE NEXT14
MOV AL,XY[4]
MOV SI,12*160
S2:
ADD SI,160
DEC AL
CMP AL,30H
JNE S2
MOV AL,XY[3]
MOV AH,00H
SUB AL,30H
ADD AL,AL
MOV BX,AX
MOV BYTE PTR ES:[SI+40*2+BX],30H
XOR BX,BX
MOV BL,BYTE PTR XY[3]
SUB BL,30H
MOV CL,BYTE PTR XY[4]
SUB CL,30H
PUSH CX
MOV SI,OFFSET ADDR1
MOV CH,00H
SHL CX,01H
ADD SI,CX
MOV DI,[SI]
MOV AL,BYTE PTR [DI+BX]
POP CX
MOV SI,OFFSET ADDR2
MOV CH,00H
SHL CX,01H
ADD SI,CX
MOV DI,[SI]
MOV BYTE PTR [DI+BX],AL
JMP START
NEXT14:
CMP BYTE PTR XY[2],'S'
JE NEXT9
JMP NEXT10
NEXT9:
XOR BX,BX
MOV BL,BYTE PTR XY[3]
SUB BL,30H
MOV CL,BYTE PTR XY[4]
SUB CL,30H
MOV SI,OFFSET ADDR1
PUSH SI
PUSH CX
MOV CH,00H
SHL CX,01H
ADD SI,CX
MOV DI,[SI]
CMP BYTE PTR [DI+BX],01H
JNE NEXT11
JMP NEXT12
NEXT11:
POP CX
POP SI
DEC BX
DEC CL
MOV CH,00H
SHL CX,1
ADD SI,CX
MOV DH,00H
MOV CX,03H
LP1:
PUSH CX
MOV CX,03H
MOV DI,[SI]
LP:
CMP BYTE PTR [DI+BX],01H
JNE NEXT
INC DH
NEXT:
INC DI
LOOP LP
POP CX
INC SI
INC SI
LOOP LP1
ADD DH,30H
MOV BYTE PTR D1[0],DH
JMP END3
XIANSHI PROC NEAR
MOV AX,0B800H
MOV ES,AX
XOR BX,BX
MOV AH,30H
MOV CX,06H
LP2:
MOV BYTE PTR ES:[160*12+40*2+BX],AH
INC AH
ADD BX,02H
LOOP LP2
MOV DX,05H
MOV AH,31H
MOV SI,160*13
LP7:
XOR BX,BX
CALL WRITE
INC AH
ADD SI,160
DEC DX
JNE LP7
JMP END2
WRITE PROC NEAR
MOV CX,06H
LP3:
CMP CX,06H
JNE NEXT7
MOV BYTE PTR ES:[SI+40*2+BX],AH
JMP N3
NEXT7:
MOV BYTE PTR ES:[SI+40*2+BX],30H
N3:ADD BX,02H
LOOP LP3
RET
WRITE ENDP
END2:
RET
XIANSHI ENDP
END3:
MOV AL,XY[4]
MOV SI,12*160
S:
ADD SI,160
DEC AL
CMP AL,30H
JNE S
MOV AL,XY[3]
MOV AH,00H
SUB AL,30H
ADD AL,AL
MOV BX,AX
MOV DL,D1[0]
MOV BYTE PTR ES:[SI+40*2+BX],DL
JMP START
NEXT12:
MOV DX,OFFSET MESSAGE
MOV AH,09H
INT 21H
NEXT10:
XOR DX,DX
MOV SI,OFFSET XXX0
MOV CX,31H
LP6:
CMP BYTE PTR [SI],01H
JNE NEXT15
INC DH
NEXT15:
INC SI
LOOP LP6
PUSH DX
MOV DX,OFFSET MESSAGE3
MOV AH,09H
INT 21H
POP DX
ADD DH,30H
MOV DL,DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DX,OFFSET MESSAGE4
MOV AH,09H
INT 21H
MOV AH,01H
INT 21H
CMP AL,"Y"
JNE NEXT20
MOV DL,0AH
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
JMP START1
NEXT20:
MOV DX,OFFSET MESSAGE1
MOV AH,09H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END STA
[ perryyang 发表于 2010-01-27 14:46 ]
老兄也是牛人呀,不过我生成了EXE文件后,并不能玩哦,本人不是想玩,是想通过操作和分析一下源码。因为本人还不算入门的。
[ aweravatar 发表于 2010-01-27 22:53 ]
??,不会啊,我用MASM,很好用的,不过没关系,过几天,我会出打蜜蜂,俄罗斯方块,同时要更新一下这个扫雷,界面不怎么有好,我现在会位映像动画了
扫雷主要是那两张表的应用,我用的还不算精,真正的应该在在程序内部,也就是春算法的完成扫描,我是在外围加了一圈零实现的,老师说我这不是最好的
[ liguangjin0616 发表于 2010-01-30 16:00 ]
朋友,我也用汇编勉强编了个俄罗斯方块,虽然很粗糙,但基本的随机出方块,加分和升级功能都有。你的俄罗斯方块什么时候出来啊?我们可以交流一下编程心得啊!
[ qiangzi 发表于 2010-02-01 17:41 ]
我来试试
[ 260267131 发表于 2010-02-02 18:18 ]
佩服
[ masm_link 发表于 2010-04-28 16:19 ]
给个注释不知道可不可以
[ 09211029 发表于 2010-05-04 13:37 ]
你们简直是牛人!小弟佩服
[ 09211029 发表于 2010-05-04 13:38 ]
哪一天我也编过游戏出来,哈哈
[ ruixiang 发表于 2010-05-18 17:30 ]
牛人,可以注释吗?佩服
[ yoyou 发表于 2010-05-29 21:41 ]
拜读!!
[ 游客 发表于 2010-06-14 20:06 ]
各位大哥,你们都太牛了吧!小弟学了一年的计算机,现在感觉什么也编不出来,哎,就只能编个课设之类的东西!
[ 游客 发表于 2010-06-14 20:07 ]
各位大哥,你们都太牛了吧!小弟学了一年的计算机,现在感觉什么也编不出来,哎,就只能编个课设之类的东西!
[ litie12580 发表于 2010-06-19 18:06 ]
什么时候才能练到这么厉害啊
[ 游客 发表于 2010-06-30 12:21 ]
都是牛人啊!
[ 游客 发表于 2010-07-18 22:27 ]
这两天编了个贪吃蛇和俄罗斯方块,有兴趣的一起研究下,QQ:624759860
[ masmaster 发表于 2010-07-18 22:32 ]
牛肉·呀