body, table{font-family: 微软雅黑; font-size: 13.5pt}
table{border-collapse: collapse; border: solid gray; border-width: 2px 0 2px 0;}
th{border: 1px solid gray; padding: 4px; background-color: #DDD;}
td{border: 1px solid gray; padding: 4px;}
tr:nth-child(2n){background-color: #f8f8f8;}

注:项目源代码和运行截图都放托管在github上了,每一步都有详细的注释,地址:https://github.com/meihao1203/Greedy_Snake
> 注:GREEDY_SNAKE 是基于8086 汇编语言开发的,汇编语言风格是采用《汇编语言》第二版 王爽著;
### Greedy_Snake 要在Intel实模式下运行,所有运行项目前要安装DOSBOX 虚拟出一个8086实模式环境 ###
1. 安装DOSBOX:运行DOSBox0.74-win32-installer.exe即可安装;
2. 将Greedy_Snake clone到本地任意盘,eg:d:\Greedy_Snake
        - mount d:\Greedy_Snake 到一个指定虚拟盘符:
        - `mount k d:\Greedy_Snake`   (why is k? because i like this charactor)
3. 运行G_Snake
        - 在DOSBOX的DOS提示符下键入:
        - `Z:\>K:`(回车)
        - `K:\>cd G_Snake`(回车)
        - 使用masm 5.0工具编译、链接、运行.asm源程序
        - MASM.EXE、LINK.EXE、debug.exe、edit.com都是开发工具,用来编译、链接、调试和编辑代码
4. G_Snake.asm 是最终代码;
        - `masm G_Snake.asm`  (编译游戏)
        - `link G_Snake.obj` (链接游戏)
        - `G_Snake`   (运行游戏)
5. G_Snake.asm分了4个步骤:
         - map.asm 是绘制游戏界面的
         - sMove.asm 是让小蛇响应对应的键盘中断自动移动
         - sMA.asm  是让小蛇响应方向后自动移动
         - G_Snake.asm 是最终程序
----------
### G_Snake.asm 实现了随机出现食物,统计分数,显示小蛇运动方向,响应键盘中断后指定方向自动移动和游戏结束恢复9h键盘中断正常退出  ###
----------
#### 游戏开始界面 ####
![游戏开始界面](https://github.com/meihao1203/Greedy_Snake/blob/master/G_Snake/1.png)
#### 运行吃到6个食物 ####
![游戏运行界面](https://github.com/meihao1203/Greedy_Snake/blob/master/G_Snake/2.png)
#### 游戏结束界面 ####
![游戏结束界面](https://github.com/meihao1203/Greedy_Snake/blob/master/G_Snake/3.png)
----------
注:游戏运行中有可能会卡住不出现食物,这时候是程序通过获取cmos芯片中的秒数来计算得出的食物位置不合理,正在重新获取新的秒数计算新的食物位置;只要不要再按键盘执行中断程序,很快就会恢复;

X86汇编语言实现的贪吃蛇游戏的更多相关文章

  1. Android快乐贪吃蛇游戏实战项目开发教程-01项目概述与目录

    一.项目简介 贪吃蛇是一个很经典的游戏,也很适合用来学习.本教程将和大家一起做一个Android版的贪吃蛇游戏. 我已经将做好的案例上传到了应用宝,无病毒.无广告,大家可以放心下载下来把玩一下.应用宝 ...

  2. 用C++实现的贪吃蛇游戏

    我是一个C++初学者,控制台实现了一个贪吃蛇游戏. 代码如下: //"贪吃蛇游戏"V1.0 //李国良于2016年12月29日编写完成 #include <iostream& ...

  3. WebGL实现HTML5的3D贪吃蛇游戏

    js1k.com收集了小于1k的javascript小例子,里面有很多很炫很酷的游戏和特效,今年规则又增加了新花样,传统的classic类型基础上又增加了WebGL类型,以及允许增加到2K的++类型, ...

  4. 100行JS实现HTML5的3D贪吃蛇游戏

    js1k.com收集了小于1k的javascript小例子,里面有很多很炫很酷的游戏和特效,今年规则又增加了新花样,传统的classic类型基础上又增加了WebGL类型,以及允许增加到2K的++类型, ...

  5. H5实现的可自定义贪吃蛇游戏

    原创游戏,使用lufylegend.js开发 用canvas实现的贪吃蛇游戏,与一般的贪吃蛇游戏不同,图片经过美工设计,代码设计支持扩展和自定义. 游戏元素丰富,包括障碍物(仙人掌),金币(奖励),苹 ...

  6. JS贪吃蛇游戏

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...

  7. 用OpenGL简单编写的一个最简单贪吃蛇游戏

    刚学OpenGL的时候,写的一个最简单的贪吃蛇游戏代码 如下: //贪吃蛇游戏 #include<stdio.h> #include<stdlib.h> #include< ...

  8. Java贪吃蛇游戏

    package snake.game; import java.awt.CardLayout; import java.awt.Color; import java.awt.Graphics;   i ...

  9. 「JavaScript」手起刀落-一起来写经典的贪吃蛇游戏

    回味 小时候玩的经典贪吃蛇游戏我们印象仍然深刻,谋划了几天,小时候喜欢玩的游戏,长大了终于有能力把他做出来(从来都没有通关过,不知道自己写的程序,是不是能通关了...),好了,闲话不多谈,先来看一下效 ...

随机推荐

  1. https 学习笔记

    参考 : http://www.cnblogs.com/JimmyZhang/archive/2008/10/02/Cryptograph.html https://blog.csdn.net/Jog ...

  2. (转+整理)Nandflash存储

    ----------------------------------------------------------------------文章1--------------------------- ...

  3. maven的安装以及问题

    https://blog.csdn.net/machao0903/article/details/73368909https://www.cnblogs.com/jiejiecool/p/421885 ...

  4. delphi 条形码

    Delphi中打印条码的方法 导读: 1 通过菜单”Component”下的”Import ActiveX”将“Microsoft Access Barcode Control 9.0”控件引入.这个 ...

  5. CentOS7 添加开机启动项

     centos6 加入开机启动:   vim /etc/rc.d/rc.local 注意命令不要出错,重启后生效   或者   centos 7 下: vim /lib/systemd/system/ ...

  6. MySQL表类型和存储引擎

    一.基本介绍 从事务安全性的角度,可以把存储引擎分为两大类: 事务安全: BDB和innodb; 事务非安全性: myisam 和 memory 二.存储引擎的比较图 看你的mysql当前默认的存储引 ...

  7. 【洛谷p1015】【一本通p1309】回文数(noip1999)

    (过了这个题灰常灰常开心) 好像前两道忘记了传送门: 回文数[传送门] 洛谷算法标签: 其实还有高精度 这个题困死在了十六进制,后来想了想,我们在c[i]中存入一个大于十的数之前的程序也可以实现回文( ...

  8. deepin系统安装成功了之后重启电脑没有deepin启动选项的简单解决办法

    开机 连续按 f10(我的电脑是惠普的,由于主板的不同可能启动键也有所不同)进入 bios 界面如图 选择系统设置,启动选项  之后如图 选择 uefi  模式下的开机顺序栏的  操作系统管理员选项并 ...

  9. layuitable设置数据表

    如图,要设置类似这样的格式 步骤如下: 1. 设置一个列表表格 2. 获取数据 table.render({ elem: '#pl-list' ,id: 'pl_table' ,height: 480 ...

  10. Quartz理解与实现

    记录关于Quartz定时调度任务的知识点,知识点主要分为两个部分,第一个部分介绍Quartz,第二部分使用Quartz+Spring来配置使用Quartz的实际操作. (一)Quartz知识点 Qua ...