计算机术语 宏是什么意思?

今天我打开Excel文件的时候,屏幕显示 这个工作簿含有一个或多个Microsoft Excel4.0宏 这些宏可能含有病毒或者其它有害代码
这句话是什么意思?

计算机科学里的宏是一种抽象的,根据一系列预定义的规则替换一定的文本模式。Excel 办公软件自动集成了“VBA”高级程序语言,用此语言编制出的程序就叫“宏”。使用“VBA”需要有一定的编程基础和耗费大量的时间,因此,绝大多数的使用者仅使用了Excel的一般制表功能,很少使用到“VBA”。
  解释器或编译器在遇到宏时会自动进行这一模式替换。对于编译语言,宏展开在编译时发生,进行宏展开的工具常被称为宏展开器。宏这一术语也常常被用于许多类似的环境中,它们是源自宏展开的概念,这包括键盘宏和宏语言。绝大多数情况下,使用“宏”这个词的使用暗示着将小命令或动作转化为一系列指令。
  宏的用途在于自动化频繁使用的序列或者是获得一种更强大的抽象能力--但这常常是一回事。
  计算机语言如C或汇编语言有简单的宏系统,由编译器或汇编器的预处理器实现。C的宏预处理器的工作只是简单的文本搜索和替换,使用附加的文本处理语言如M4,C 程序员可以获得更精巧的宏。
  Lisp类语言如Common Lisp和Scheme有更精巧的宏系统: 宏的行为如同是函数对自身程序文本的变形,并且可以应用全部语言来表达这种变形。一个C宏可以定义一段语法的替换,然而一个Lisp的宏却可以控制一节代码的计算。
  获得了控制代码的执行顺序(见惰性计算和非限制函数)的能力,使得新创建的语法结构与语言内建的语法结构不可区分。例如,一种Lisp 方言有 cond 而没有if ,就可以使用宏由前者定义后者。Lisp 语法的去部主要扩展,比如面向对象的CLOS 系统,可以由宏来定义。

参考资料:百度百科

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-04-20

第2个回答  2011-05-24
计算机科学里的宏是一种抽象的,根据一系列预定义的规则替换一定的文本模式。Excel 办公软件自动集成了“VBA”高级程序语言,用此语言编制出的程序就叫“宏”。使用“VBA”需要有一定的编程基础和耗费大量的时间,因此,绝大多数的使用者仅使用了Excel的一般制表功能,很少使用到“VBA”。
VBA 可以访问许多操作系统函数并支持文档打开时自动执行宏。这使得用这种语言写计算机病毒成为可能。1990年代中后期,宏病毒成为了最流行的计算机病毒类型之一。其它的包括宏语言的项目,如openoffice.org,故意从其宏语言中排除了一些功能(如:自动执行)以避免破坏程序。然而,这一特性在很多事务中受到欢迎。
事实上并不仅是Office中的VBA可以用来写病毒,任何有文件I/O功能的SCRIPT都可以,如:ASP中的VBSCRIPT,WINDOWS中的SCRIPT,STAROFFICE中的MACRO,DOS中的BAT,UNIX中的SHELLSCRIPT等。

·这个提示只是一个安全类的提示,很多时候并不会发生中毒的事情,不过,还是尽量不要打开来源不明的文档。

另外,面对「道高一尺、魔高一丈」的病毒威胁,使用者除了要有良好的防毒观念外,更要选购一套侦测率高的防毒软体。虽然在网站提供许多免费线上扫毒服务,但是
病毒的威胁管道不单只是磁片、其他诸如CD ROM、BBS、区域网路(LAN)和Internet随时都有病毒入侵的威胁,被动的扫毒或是怀疑中毒时,才上网扫毒,往往病毒已经潜伏在无数的档案了,这样的被动扫毒可能缓不济急,所以一套可以即时监控的防毒软体是必须的。
这些希望对你有帮助。本回答被提问者采纳
相似回答