Exemple #1
0
        public InstructionDef(EnumValue code, string opCodeString, string instructionString, EnumValue mnemonic,
                              EnumValue mem, EnumValue bcst, EnumValue decoderOption, InstructionDefFlags1 flags1, InstructionDefFlags2 flags2,
                              InstructionDefFlags3 flags3, InstrStrFmtOption instrStrFmtOption, InstructionStringFlags instrStrFlags,
                              InstrStrImpliedOp[] instrStrImpliedOps,
                              MandatoryPrefix mandatoryPrefix, OpCodeTableKind table, OpCodeL lBit, OpCodeW wBit, uint opCode, int opCodeLength,
                              int groupIndex, int rmGroupIndex, CodeSize operandSize, CodeSize addressSize, TupleType tupleType, OpCodeOperandKind[] opKinds,
                              PseudoOpsKind?pseudoOp, EnumValue encoding, EnumValue flowControl, ConditionCode conditionCode,
                              BranchKind branchKind, RflagsBits read, RflagsBits undefined, RflagsBits written, RflagsBits cleared, RflagsBits set,
                              EnumValue[] cpuid, OpInfo[] opInfo,
                              FastFmtInstructionDef fast, FmtInstructionDef gas, FmtInstructionDef intel, FmtInstructionDef masm, FmtInstructionDef nasm)
        {
            Code               = code;
            OpCodeString       = opCodeString;
            InstructionString  = instructionString;
            Mnemonic           = mnemonic;
            Memory             = mem;
            MemoryBroadcast    = bcst;
            DecoderOption      = decoderOption;
            EncodingValue      = encoding;
            Flags1             = flags1;
            Flags2             = flags2;
            Flags3             = flags3;
            InstrStrFmtOption  = instrStrFmtOption;
            InstrStrFlags      = instrStrFlags;
            InstrStrImpliedOps = instrStrImpliedOps;

            MandatoryPrefix = mandatoryPrefix;
            Table           = table;
            LBit            = lBit;
            WBit            = wBit;
            OpCode          = opCode;
            OpCodeLength    = opCodeLength;
            GroupIndex      = groupIndex;
            RmGroupIndex    = rmGroupIndex;
            TupleType       = tupleType;
            OperandSize     = operandSize;
            AddressSize     = addressSize;
            OpKinds         = opKinds;

            PseudoOp        = pseudoOp;
            ControlFlow     = flowControl;
            ConditionCode   = conditionCode;
            BranchKind      = branchKind;
            RflagsRead      = read;
            RflagsUndefined = undefined;
            RflagsWritten   = written;
            RflagsCleared   = cleared;
            RflagsSet       = set;
            RflagsInfo      = null;
            Cpuid           = cpuid;
            CpuidInternal   = null;
            OpInfo          = opInfo;
            OpInfoEnum      = new EnumValue[opInfo.Length];

            Fast  = fast;
            Gas   = gas;
            Intel = intel;
            Masm  = masm;
            Nasm  = nasm;
        }
        static void Main(string[] args)
        {
            StringBuilder resultado = new StringBuilder();

            DateTime horarioInicio = DateTime.Now;

            resultado.Append(horarioInicio.ToString("hh:mm:ss") + Environment.NewLine);

            Dados.LerCategorias();
            Dados.LerProdutos();
            Dados.LerClientes();
            Dados.LerVendas();

            resultado.Append(OpCodeA.Executar());
            resultado.Append(OpCodeB.Executar());
            resultado.Append(OpCodeC.Executar());
            resultado.Append(OpCodeD.Executar());
            resultado.Append(OpCodeE.Executar());
            resultado.Append(OpCodeF.Executar());
            resultado.Append(OpCodeG.Executar());
            resultado.Append(OpCodeH.Executar());
            resultado.Append(OpCodeI.Executar());
            resultado.Append(OpCodeJ.Executar());
            resultado.Append(OpCodeK.Executar());
            resultado.Append(OpCodeL.Executar());
            resultado.Append(OpCodeM.Executar());
            resultado.Append(OpCodeN.Executar());
            resultado.Append(OpCodeO.Executar());
            resultado.Append(OpCodeP.Executar());
            resultado.Append(OpCodeQ.Executar());

            if (File.Exists("resultado.txt"))
            {
                File.Delete("resultado.txt");
            }

            using (StreamWriter sw = new StreamWriter("resultado.txt", true, Encoding.UTF8, 65536))
            {
                sw.WriteLine(resultado.ToString());
            }

            DateTime horarioTermino = DateTime.Now;

            File.AppendAllText("resultado.txt",
                               horarioTermino.ToString("hh:mm:ss"));

            TimeSpan tempoDeProcessamento = horarioTermino.Subtract(horarioInicio);


            File.AppendAllText("resultado.txt",
                               Environment.NewLine +
                               tempoDeProcessamento);

            Console.WriteLine("Concluido");

            Console.ReadKey();
        }