Exemple #1
0
        /// <summary>
        /// 初始化调试器
        /// </summary>
        /// <param name="codes">中间代码</param>
        /// <param name="breakpointList">断点列表</param>
        public CMMDebuger(List <IntermediateCode> codes, List <int> breakpointList)
        {
            // 保存断点信息
            breakpoints = breakpointList;

            // VM初始化
            vm = new VirtualMachine();

            // 设置中断处理器
            vm.SetDebugHandler(HandleInterrupt);

            // 设置结束处理器
            vm.SetFinishHandler(HandlerFinish);

            // 载入中间代码
            vm.Load(codes);
            codesArray = codes;
        }