⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 const_vardatatype.h

📁 这是一个软件水平资格考试中使用的CASL汇编语言的编译器,实现文件中包括一个编译器,一个虚拟机,一个类似于Debug的调试器.
💻 H
字号:
///////////////////////////////////////////////////////////////////////
//文件功能:Casl汇编中常量,变量的数据类型定义
//开发人员:杨军
//开发日期:2004-4-17
//修改人员:
//修改日期:
///////////////////////////////////////////////////////////////////////
#ifndef __CONST_VAR_DATA_TYPE_DEF
#define __CONST_VAR_DATA_TYPE_DEF

#include "PlatformIndependentDataType.h"

//----------------Casl中的常量类型定义--------------------------------------
typedef enum
{
  DEC_CONST = 0,     //十进制常量
  HEX_CONST,         //十六进制常量
  STR_CONST,         //字符串常量
  LABEL_CONST        //标号常量
} ConstType;     

//----------------Casl中的常量数据的数据体定义-------------------------------
typedef union tagConstData
{
  int decVal;   //十进制常量
  int hexVal;   //十六进制常量
  CaslString strVal; //字符串常量
  CaslString labelVal;  //标号常量
}  ConstData;

//----------------Casl中的常量数据 (DC) 结构定义---------------------------------
typedef struct tagCaslConst
{
  ConstType type;  //常量类型
  CaslString    strLabelName;  //常量所对应的标号的名称
  ConstData constData;
} CaslConst;  

//-----------------//Casl中的变量数据(DS)结构定义-----------------------------
typedef struct tagCaslVariable
{
  CaslString strLabelName;   //变量所对应的标号的名称
  int    iSpaceCnt;      //需要为该变量分配的内存空间的大小
  //结构的Constructor
  tagCaslVariable()
  {
    strLabelName[0] = '\0';
    iSpaceCnt = 0;
  }
  tagCaslVariable(const CaslString argLabelName, int argSpaceCnt)
  {
    if (NULL != argLabelName)
    {
      strcpy(strLabelName, argLabelName);
    }
    iSpaceCnt = argSpaceCnt;
  }
} CaslVariable;  

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -