const int BLOCK_LINE = 20;//当前地图的行数 const int BLOCK_ROW = 10;//当前地图的列数 class CBlock { public: CBlock(void); ~CBlock(void); private: // 当前方块形状 int m_BlockShape; //下一个方块形状 int m_nextBlockShape; //当前方块状态 int m_BlockState; //等级 int m_BlockLevel; //当前可消行
有限状态机(Finite State Machine)是一种时序机,它源自于人们将一个复杂的问题分割成多个简单的部分来处理的思想。状态机通过时钟驱动下的有多个状态,以及状态之间的跳转规则来实现复杂的逻辑,一旦当前的状态确定,也就明确了相关的输入输出。 有限状态机主要分为两个类型:第一类,如果输出只和当前状态有关而和输入无关,称之为Moore状态机;第二类,输出不仅和当前状态有关也和输入有关,称之为Melay型状态机。本节将主要介绍这两类状态机、状态编码以及使用VHDL和Verilog语言描述的