汇编语言实例:封装器
现在创建一个简短的程序 Wraps.asm 来展示之前已介绍的作为过程封装器的宏。由于每个宏都隐含了大量繁琐的参数传递,因此程序出奇得紧凑。假设这里所有的宏当前都在 Macros.inc 文件内:
程序输出 程序输出的示例如下:
- ; 过程封装器宏 (Wraps.asm)
- ; 本程序演示宏作为库过程的封装器。
- ; 内容: mGotoxy, mWrite, mWriteString, mReadString, 和 mDumpMem.
- INCLUDE Irvine32.inc
- INCLUDE Macros.inc ; 宏定义
- .data
- array DWORD 1,2,3,4,5,6,7,8
- firstName BYTE 31 DUP(?)
- lastName BYTE 31 DUP(?)
- .code
- main PROC
- mGotoxy 0,0
- mWrite <"Sample Macro Program",0dh,0ah>
- ; 输入用户名
- mGotoxy 0,5
- mWrite "Please enter your first name: "
- mReadString firstName
- call Crlf
- mWrite "Please enter your last name: "
- mReadString lastName
- call Crlf
- ; 显示用户名
- mWrite "Your name is "
- mWriteString firstName
- mWriteSpace
- mWriteString lastName
- call Crlf
- ; 显示整数数组
- mDumpMem OFFSET array,LENGTHOF array, TYPE array
- exit
- main ENDP
- END main

所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算