示例#1
0
        /// <summary>
        /// MOV D, E
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override Result VisitMOV16(LowLevelAssemblyParser.MOV16Context context)
        {
            string destinationRegister = context.register_16bit(0).GetText();
            string sourceRegister      = context.register_16bit(1).GetText();

            string opcode = "01";

            opcode += GetRegisterOpCode_GeneralPurpose_MOV16(destinationRegister);
            opcode += GetRegisterOpCode_GeneralPurpose_MOV16(sourceRegister);
            opcode += " ; MOV16 " + destinationRegister + ", " + sourceRegister;
            assembly.Add(opcode);

            return(base.VisitMOV16(context));
        }
 /// <summary>
 /// Visit a parse tree produced by <see cref="LowLevelAssemblyParser.MOV16"/>.
 /// <para>
 /// The default implementation returns the result of calling <see cref="AbstractParseTreeVisitor{Result}.VisitChildren(IRuleNode)"/>
 /// on <paramref name="context"/>.
 /// </para>
 /// </summary>
 /// <param name="context">The parse tree.</param>
 /// <return>The visitor result.</return>
 public virtual Result VisitMOV16([NotNull] LowLevelAssemblyParser.MOV16Context context)
 {
     return(VisitChildren(context));
 }