/// <summary>
        /// 程序回调-用于外部调用回调与程序调用中断回调
        /// </summary>
        /// <returns>返回回调结果</returns>
        public CallBack_Flag CallBackProgram()
        {
            CallBack_Flag flag = CallBack_Flag.CALLBACK_PROGRAM;

            ProgramEX.Pop();
            if (0 >= ProgramEX.Count)
            {
                flag = CallBack_Flag.CALLBACK_END;
            }
            return(flag);
        }
        /// <summary>
        /// 过程回调-用于所有的程序调度后的指针返回
        /// </summary>
        /// <param name="pc">回调指针</param>
        /// <returns>返回回调结果</returns>
        public CallBack_Flag CallBackFunction(out int pc)
        {
            CallBack_Flag flag = CallBack_Flag.CALLBACK_FUNCTION;

            if (0 >= ProgramEX.Peek().Count)
            {
                flag = CallBackProgram();
            }
            if (CallBack_Flag.CALLBACK_END != flag)
            {
                pc = ProgramEX.Peek().Pop();
            }
            else
            {
                pc = -1;
            }
            return(flag);
        }