Red de conocimiento informático - Conocimiento informático - ¿Qué significa macro?

¿Qué significa macro?

¿Qué es una macro?

Una macro en informática es un concepto abstracto que reemplaza un determinado patrón de texto basado en un conjunto de reglas predefinidas. El software de oficina Excel integra automáticamente el lenguaje de programación de alto nivel "VBA", y los programas escritos en este lenguaje se denominan "maros". ".El uso de "VBA" requiere una cierta base de programación y consume mucho tiempo. Por lo tanto, la gran mayoría de los usuarios sólo utilizan la función de tabulación general de Excel y rara vez utilizan "VBA".

Cuando se encuentran con macros El intérprete o compilador realiza este reemplazo de patrón automáticamente. Para los lenguajes compilados, la expansión de macros ocurre en el momento de la compilación y la herramienta que realiza la expansión de macros a menudo se denomina expansor de macros. El término macro también se usa a menudo para derivar del concepto de macro. expansión En muchos contextos similares, incluidas las macros de teclado y los lenguajes de macros, el uso de la palabra "macro" en la mayoría de los casos significa convertir un pequeño comando u operación en una secuencia de instrucciones.

El propósito de las macros es. Automatizar secuencias comunes u obtener mayores capacidades de abstracción, pero esto suele ser lo mismo.

Los lenguajes informáticos (como C o el lenguaje ensamblador) tienen sistemas de macros simples, preprocesados ​​por compiladores o implementaciones de procesadores. El trabajo del preprocesador de macros de C es simplemente buscar y reemplazar texto, pero con lenguajes de procesamiento de texto adicionales (como M4), los programadores de C pueden usar macros más complejas

lenguajes similares a Lisp y Scheme. ) tienen sistemas de macros más complejos: las macros se comportan como si transformaran su propio texto de programa a través de funciones, y estas transformaciones se pueden expresar en un lenguaje completo. Las macros C definen una sustitución gramatical y las macros Lisp luego controlan el cálculo de un bloque de. code.

Obtener la capacidad de controlar el orden en el que se ejecuta el código (consulte Evaluación diferida y funciones sin restricciones) hace que las construcciones de sintaxis recién creadas sean indistinguibles de las integradas en el lenguaje. Por ejemplo, los dialectos Lisp con cond. pero sin if se pueden usar macros para definir lo último y lo primero, y las extensiones principales de la sintaxis Lisp (como el sistema CLOS orientado a objetos) se pueden definir mediante macros

Aplicaciones típicas de macros

Acelerar la edición y el formateo diario

Combinar múltiples comandos

Hacer que las opciones en los cuadros de diálogo sean más accesibles

Automatizar un grupo de Tareas complejas

Introducción a la programación de macros

Al programar macros en un lenguaje de macros desconocido, puede hacer esto: primero preste atención a lo que el usuario quiere que logre la macro y luego abra los archivos de macro e intente Para comprender cómo funciona la estructura del comando, las macros también se pueden ajustar modificando el comando. Algunos lenguajes de macros (como el motor de ejecución Dexterity del software Great Plains Accounting) no pueden extraer datos de otras fuentes de datos (como el texto delimitado por comas). Para solucionar esta limitación, puede crear un programa de computadora en un lenguaje de programación más potente, como VBA, que genere una macro especial en este lenguaje de programación débil. Por ejemplo, se puede programar una macro de Microsoft Excel desde Leer datos de un. hoja de estilo extendida o archivo de texto y cree un archivo .mac de Great Plains para importar datos específicos a Great Plains. Cada nuevo conjunto de datos requiere un 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. Utilice estas macros para reemplazar largas secuencias de comandos con pulsaciones de teclas cortas y proporcionar una forma sencilla de automatización para tareas repetitivas.

El editor de texto del programador Emacs (abreviatura de "Editing MACroS") es producto de esta idea. De hecho, la mayoría de los editores se componen de macros, y Emacs fue diseñado originalmente como un conjunto de macros para el lenguaje de edición TECO y luego fue portado a Emacs Lisp, un dialecto Lisp.

Lenguaje de Macros

Un lenguaje de macros es un tipo de lenguaje de programación en el que todos o la mayoría de los cálculos se realizan mediante macros expandibles. Los lenguajes de macros no se utilizan mucho en la programación general, pero se utilizan habitualmente en programas de procesamiento de texto. Por ejemplo,

Preprocesador C Preprocesador C

Macros de Internet (iOpus)

M4 (derivado de AT&T, incluido con Unix, como se describió anteriormente)

Definiciones de macros

Una de las funciones de preprocesamiento proporcionadas por los programas C. Incluye definiciones de macros con y sin parámetros. Específicamente, un reemplazo de cadena simple o un reemplazo detallado con un identificador específico. Su forma es:

#define cadena de bandera (lista de parámetros)

Nombre de macro

La bandera en la definición anterior se llama "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".

Virus de Microsoft Word y 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 macro en absoluto. Sin embargo, su funcionalidad evolucionó y eventualmente reemplazó el concepto de macros en las aplicaciones de usuario, por lo que se lo denomina de manera amplia e incorrecta lenguaje de macros.

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 utilizando este lenguaje.

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 ciertas funciones (como la ejecución automática) del lenguaje de macros para evitar dañar el programa. Sin embargo, esta característica es popular en muchas transacciones.