El problema con la "macro"
Macros
[Editar este párrafo] 1. "Macros" en las computadoras
Qué son las macros
Las macros en informática son una abstracción que reemplaza ciertos patrones de texto basándose en un conjunto de reglas predefinidas. El software de oficina Excel integra automáticamente el lenguaje de programación de alto nivel "VBA", y el programa compilado en este lenguaje se denomina "macro". El uso de "VBA" requiere cierta base de programación y consume mucho tiempo. Por lo tanto, la gran mayoría de los usuarios solo usan la función de tabulación general de Excel y rara vez usan "VBA".
El intérprete o compilador realiza automáticamente esta sustitución de patrón cuando encuentra una macro. Para los lenguajes compilados, la expansión de macros ocurre en el momento de la compilación y las herramientas que realizan la expansión de macros a menudo se denominan expansores de macros. El término macro se utiliza a menudo en muchos contextos similares, derivado del concepto de expansión de macros, incluidas las macros de teclado y los lenguajes de macros. La mayoría de las veces, el uso de la palabra “macro” implica la conversión de pequeños comandos o acciones en una serie de instrucciones.
El propósito de las macros es automatizar secuencias utilizadas con frecuencia o lograr una abstracción más poderosa, pero esto suele ser lo mismo.
Los lenguajes informáticos como C o el lenguaje ensamblador cuentan con sistemas de macros simples, que son implementados por el preprocesador del compilador o ensamblador. El trabajo del preprocesador de macros de C es simplemente buscar y reemplazar texto. Utilizando lenguajes de procesamiento de texto adicionales como M4, los programadores de C pueden obtener macros más sofisticadas.
Los lenguajes tipo Lisp como Common Lisp y Scheme tienen sistemas de macros más sofisticados: las macros se comportan como funciones que deforman el texto de su propio programa, y todos los lenguajes pueden usarse para expresar esta deformación. Una macro C puede definir un reemplazo gramatical, pero una macro Lisp puede controlar el cálculo de una sección de código.
Se obtuvo la capacidad de controlar el orden en el que se ejecuta el código (consulte evaluación diferida y funciones sin restricciones), lo que hace que las estructuras sintácticas recién creadas sean indistinguibles de las integradas en el lenguaje. Por ejemplo, un dialecto Lisp que tiene cond pero no if puede usar macros para definir el último del primero. Las principales extensiones de la sintaxis Lisp, como el sistema CLOS orientado a objetos, pueden definirse mediante macros.
Usos típicos de las macros
Acelera la edición y el formateo diario
Combina múltiples comandos
Facilita las opciones en los cuadros de diálogo Visita
Automatizar una serie compleja de tareas
Introducción a la programación de macros
Cuando realices programación de macros en un lenguaje de macros desconocido, puedes hacer esto. Primero, ten en cuenta cuál es el El usuario desea que se realice la macro, luego abra el archivo de macro e intente comprender cómo funciona la estructura del comando. También puede modificar el comando para ajustar la macro. Algunos lenguajes de macros, como el motor de ejecución Dexterity del software de contabilidad Great Plains, no pueden importar datos de otras fuentes de datos (como archivos de texto delimitados por comas). Esta limitación se puede solucionar creando un programa informático en un lenguaje de programación más potente como VBA que genere una macro especial en este débil lenguaje de programación. Por ejemplo, se puede programar una macro de Microsoft Excel para leer datos de una hoja de estilo extendida o un archivo de texto y crear un archivo .mac de Great Plains, que se utiliza para importar datos específicos a Great Plains. Esto debe declararse para cada dato nuevo. nuevo archivo .mac.
Macros de teclado
Las macros de teclado y las macros de editor se utilizan de forma interactiva en la interfaz gráfica de usuario y el editor, respectivamente. Úsalos para reemplazar largas secuencias de comandos con pulsaciones de teclas cortas y proporciona una forma sencilla de automatización para tareas repetitivas.
El editor de texto del programador Emacs (abreviatura de "Editing MACroS") es un producto de esta idea.
De hecho, la mayoría de los editores se componen de macros. Emacs se diseñó originalmente como un conjunto de macros del lenguaje de edición TECO y luego se transfirió a Emacs Lisp, un dialecto chino de Lisp.
Lenguaje de macros
El lenguaje de macros es un tipo de lenguaje de programación en el que todos o la mayoría de los cálculos se completan mediante macros expandidas. Los lenguajes de macros no se utilizan mucho en la programación general, pero sí se utilizan habitualmente en programas de procesamiento de textos. Por ejemplo,
Preprocesador C Preprocesador C
Macros de Internet (iOpus)
M4 (como se mencionó anteriormente, derivado de AT&T, incluido con Unix)
Definición de macro
Una de las funciones de preprocesamiento proporcionadas por el programa c. Incluyendo definiciones de macros con parámetros y definiciones de macros sin parámetros. Específicamente, se refiere al uso de un identificador específico para realizar un reemplazo de cadena simple o un reemplazo de elaboración. El formato es:
#define cadena de identificador (lista de parámetros)
Nombre de macro
El identificador en la definición anterior se denomina "nombre de macro".
Expansión de macros
El proceso de reemplazar nombres de macros con cadenas al compilar un programa en C se llama "expansión de macros".
Microsoft Word y virus de macro
Visual Basic para Aplicaciones (VBA) es un lenguaje de programación de Microsoft Office pero, según la definición anterior, no es un lenguaje de macros en absoluto. Sin embargo, su funcionalidad evolucionó y eventualmente reemplazó la idea macro de las aplicaciones de usuario, por lo que se lo denomina amplia y erróneamente lenguaje macro.
VBA proporciona acceso a muchas funciones del sistema operativo y admite la ejecución automática de macros cuando se abre un documento. Esto hace posible escribir virus informáticos en este idioma. A mediados y finales de la década de 1990, los virus de macro se convirtieron en uno de los tipos más populares de virus informáticos. Otros proyectos que incluyen lenguajes de macros, como openoffice.org, excluyen deliberadamente algunas funciones (como la ejecución automática) de sus lenguajes de macros para evitar dañar los programas. Sin embargo, esta característica es bienvenida en muchas transacciones.
[Editar este párrafo] 2. Caracteres chinos: macro
macro #hóng
Significado ① amplio; grandioso | ② Apellido.
Magnífico #hóngdà Magnífico y enorme.
〖Ejemplo〗 Xiaoqiang ha tenido la gran ambición de estudiar mucho para convertirse en un destacado ingeniero de construcción en el futuro.
Ambición #hóngtú Grandes ideas, grandes planes.
〖Ejemplo〗El país espera que quienes hayan completado sus estudios en el extranjero regresen al país y contribuyan a la realización de las ambiciones de la patria.
El magnífico #hóngwěi es majestuoso y de gran escala.
〖Ejemplo〗El magnífico Monumento a los Héroes del Pueblo se encuentra en el centro de la Plaza de Tiananmen.
===================Más información sobre esta palabra================== p>
Macro
(Fonético. Cong 倀, que se refiere al sonido relacionado con la familia y la casa. Significado original: la casa es amplia y profunda)
Igual que el significado original
Macro, sonido profundo en la casa. ——"Shuowen". Anotación de Duan Yucai: "La casa es profunda. La palabra" xiang "se deriva de la parte inferior de cada libro, por lo que está incorrecta debido a la palabra" wuxiang "a continuación. Ahora es correcto según "Yunhui", "Jiyun". y "Leipian"....La casa es profunda, Es profunda y amplia por dentro."
Mi país y mi hogar. ――"El caldero de Mao Gong"
Macro, nota: Cada sonido en la casa vasta y profunda responde. ——Zhu Junsheng de la dinastía Qing, "Shuowen Tongxun Dingsheng"
Grande
Hong, grande. ——"Erya·Exegesis"
Padre de Ruo Baohong. ——"Libro·Jiu Gao"
Da su gran esquema.
——"Libro·Prefacio"
El instrumento se llama "Yan". ――"Lu Shi Chun Qiu·Meng Dong"
Otro ejemplo: Hong Cai (gran talento); Hong Shuo (gran confucianismo y maestro en aprendizaje. Se refiere a una persona erudita Hong
);Hong hóng Broad, Guangbo: ~ grande. ~Ver. ~Cantidad. ~Imagen. ~Wei. Amplio ~.
Código Zheng: WDGZ, U: 5B8F, GBK: BAEA (5) Número de trazos: 7, radical: 宀, número de orden de trazo: 4451354