win32汇编---控制台中输出

        .386
        .model flat, stdcall
        option casemap :none
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;include文件
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
include     windows.inc
include     user32.inc
include     kernel32.inc
include     masm32.inc
include     gdi32.inc

includelib     gdi32.lib
includelib     user32.lib
includelib     kernel32.lib
includelib     masm32.lib
include        macro.asm
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;数据段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        .data?
szBuffer    db 100 dup (?)
lpSize        db 50  dup (?)
hOut          dd ?                ;输出设备句柄
iLen           dd ?                ;字符串长度
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;代码段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        .code
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
START:
    mov    eax,1234
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;调用StdOut
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>      invoke    wsprintf, offset szBuffer, CTXT("%x"), eax
    ;调用StdOut
    invoke    StdOut, offset szBuffer
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;调用API
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    ;获取控制台输出设备句柄
    invoke    GetStdHandle,STD_OUTPUT_HANDLE
    mov        hOut,eax
    ;获取字符串长度
    invoke    lstrlen,offset szBuffer
    mov        iLen,eax
    invoke WriteFile,hOut,offset szBuffer,iLen,NULL,NULL
    ;暂停显示,回车键关闭
    invoke    StdIn,offset lpSize, sizeof lpSize
    invoke     ExitProcess,0
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    end          START

以上masmplus编译通过,如大家有异议可以告诉我。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
NiceBASIC文编程语言,是采用类似BASIC语法,并兼有C++的一些高级特性(比如:指针(Pointer)操作运算、自动化类(Class)、重载函数(OverLoad)、重载操作符(OverLoad)等等)集于一身的全文关键字的编程语言,简称NB。   其独特个性化的全文式编程模式,更易于国人理解和方便学习编程,不用懂英文也可以编写自己的程序软件。变量和函数等标识符名称,也可以用文表示,方便于源码的交流和省略注释说明。 基本功能:   NB内置有基本BASIC函数库,和图像库(用于编写游戏)。 功能扩展:   以静态库(LIB)链接形式调用标准C语言函数库里的函数。可以使用由标准C语言和汇编ASM编写的静态库(LIB)作为函数功能扩展。可以调用WIN32API的大部分函数,已经在内部定义(.bi文件相当于C语言的.h)声明,直接引用即可,就像C++的WINDOWS开发包(SDK)。 NB的编译器是采用开源编译器后续开发的,可以编译四种类型的可执行文件:   一、控制台程序。类似于DOS界面的命令行提示符,但只能运行在WIN32平台。   二、WINDOWS图形界面程序。调用系统的WIN32API来构建GUI窗体组件。   三、WIN32 DLL 动态链接库。导出函数可以为多种调用约定,比如:Stdcall(标准WINAPI)、 Cdecl(兼容C语言)、Pascal 。可供给其它语言调用。   四、静态链接库。供给标准的C语言调用链接。就是说NB的静态库是兼容C语言的LIB,互相通用。 为了方便编写代码,附带专业级的多功能高级编辑器:支持文的语法高亮,工程管理,代码提示补全,智能缩进,自动完成,插件,模板等功能。并且针对汉字输入字数多的缺点,采用首拼输入命令提示关联到函数名,变量名,常量名。比如要输入“如果”只须键入“rg”(“如果”二字的首拼)就会在提示列表出现“如果”,选择即可输出“如果”到编辑器,方便快捷。 虽然NB目前还没有可视化的集成开发环境(Visual IDE),但NB提供了构建完整标准WIN32应用程序的所有功能。作为小巧的编程工具和初级水平程序员进阶学习工具。选择NB应该是NB的选择!
Windows环境下32位汇编语言程序设计 第2版(罗文斌) 完整光盘内容,包含每章内容的完整代码 本光盘所包含目录的说明 根目录下的 *.pdf ;附录A、B、C的电子版文档 Chapter02\Test ;测试编译环境 Chapter03\HelloWorld ;Hello World Chapter04\FirstWindow ;用Win32汇编写第一个窗口 Chapter04\FirstWindow-1 ;用Win32汇编写第一个窗口 Chapter04\SendMessage ;窗口间的消息互发 Chapter04\SendMessage-1 ;窗口间的消息互发 Chapter05\Menu ;使用资源 - 使用菜单 Chapter05\Icon ;使用资源 - 使用图标 Chapter05\Dialog ;使用资源 - 使用对话框 Chapter05\Listbox ;使用资源 - 使用列表框 Chapter05\Control ;使用资源 - 使用子窗口控件 Chapter05\ShowVersionInfo ;使用资源 - 显示版本信息资源的程序 Chapter05\VersionInfo ;使用资源 - 使用版本信息资源 Chapter06\Timer ;定时器的使用 Chapter07\DcCopy ;在两个窗口的 DC 间互相拷贝屏幕 Chapter07\Clock ;模拟时钟程序 Chapter07\BmpClock ;用 Bitmap 图片做背景的模拟时钟程序 Chapter07\TestObject ;一些常见的绘图操作 Chapter08\CommDlg ;使用通用对话框 Chapter09\Toolbar ;使用工具栏 Chapter09\StatusBar ;使用状态栏 Chapter09\Richedit ;使用丰富编辑控件 Chapter09\Wordpad ;一个完整的文本编辑器例子 Chapter09\SubClass ;窗口的子类化例子 Chapter09\SuperClass ;窗口的超类化例子 Chapter10\MemInfo ;显示当前内存的使用情况 Chapter10\Fragment ;内存碎片化的演示程序 Chapter10\FindFile ;全盘查找文件的例子 Chapter10\FormatText ;文件读写例子 Chapter10\FormatText\FileMap ;使用内存映射文件进行文件读写的例子 Chapter10\MMFShare ;使用内存映射文件进行进程间数据共享 Chapter11\Dll\Dll ;最简单的动态链接库例子 - 编写 DLL Chapter11\Dll\MASM Sample ;最简单的动态链接库例子 - 使用 DLL Chapter11\Dll\VC++ Sample ;最简单的动态链接库例子 - 在VC++使用汇编编写的DLL Chapter11\KeyHook ;Windows 钩子的例子 - 监听键盘动作 Chapter11\RecHook ;Windows 日志记录钩子的例子 - 监听键盘动作 Chapter12\Counter ;有问题的程序 - 一个计数程序 Chapter12\Thread ;用多线程的方式解决上一个程序的问题 Chapter12\Event ;使用事件对象 Chapter12\ThreadSynErr ;一个存在同步问题的多线程程序 Chapter12\ThreadSyn\UseCriticalSection ;使用临界区对象解决多线程同步问题 Chapter12\ThreadSyn\UseEvent ;使用事件对象解决多线程同步问题 Chapter12\ThreadSyn\UseMutex ;使用互斥对象解决多线程同步问题 Chapter12\ThreadSyn\UseSemaphore ;使用信号灯对象解决多线程同步问题 Chapter13\CmdLine ;使用命令行参数 Chapter13\Process ;创建进程的例子 Chapter13\ProcessList ;显示系统运行的进程列表 Chapter13\Patch1 ;一个内存补丁程序 Chapter13\Patch2 ;一个内存补丁程序 Chapter13\Patch3 ;一个内存补丁程序 Chapter13\HideProcess9x ;Windows 9x下的进程隐藏 Chapter13\RemoteThreadDll ;用 DLL 注入的方法实现远程进程 Chapter13\RemoteThread ;不依靠任何外部文件实现远程进程 Chapter14\TopHandler ;使用筛选器处理异常 Chapter14\SEH01 ;最基本结构化异常处理例子 Chapter14\SEH02 ;改进后的结构化异常处理例子 Chapter14\Unwind ;异常处理的展开操作例子 Chapter15\Ini ;使用 INI 文件 Chapter15\Reg ;操作注册表的例子 Chapter15\Associate ;操作注册表实现文件关联 Chapter16\TcpEcho ;实现 TCP 服务器端的简单例子 Chapter16\Chat-TCP ;用 TCP 协议实现的聊天室例子 Chapter17\PeInfo ;查看 PE 文件的基本信息 Chapter17\Import ;查看 PE 文件的导入表 Chapter17\Export ;查看 PE 文件的导出表 Chapter17\Resource ;查看 PE 文件的资源列表 Chapter17\Reloc ;查看 PE 文件的重定位信息 Chapter17\NoImport ;不使用导入表调用 API 函数 Chapter17\AddCode ;在 PE 文件上附加可执行代码的例子 Chapter18\OdbcSample ;用ODBC操作数据库的例子 Appendix A\EchoLine ;控制台输入输出的例子 Appendix B\MsgWindow01 ;消息机制试验 1 Appendix B\MsgWindow02 ;消息机制试验 2 Appendix B\MsgWindow03 ;消息机制试验 3 Appendix B\MsgWindow04 ;消息机制试验 4 Appendix C\BrowseFolder ;浏览目录对话框
NiceBASIC V1.0文编程正式版(绿色版) 阿杰上传于:2008年12月29日16:11:16 NiceBASIC文编程语言,是采用类似BASIC语法,并兼有C++的一些高级特性(比如:指针(Pointer)操作运算、自动化类(Class)、重载函数(OverLoad)、重载操作符(OverLoad)等等)集于一身的全文关键字的编程语言,简称NB。   其独特个性化的全文式编程模式,更易于国人理解和方便学习编程,不用懂英文也可以编写自己的程序软件。变量和函数等标识符名称,也可以用文表示,方便于源码的交流和省略注释说明。 基本功能:   NB内置有基本BASIC函数库,和图像库(用于编写游戏)。 功能扩展:   以静态库(LIB)链接形式调用标准C语言函数库里的函数。可以使用由标准C语言和汇编ASM编写的静态库(LIB)作为函数功能扩展。可以调用WIN32API的大部分函数,已经在内部定义(.bi文件相当于C语言的.h)声明,直接引用即可,就像C++的WINDOWS开发包(SDK)。 NB的编译器是采用开源编译器后续开发的,可以编译四种类型的可执行文件:   一、控制台程序。类似于DOS界面的命令行提示符,但只能运行在WIN32平台。   二、WINDOWS图形界面程序。调用系统的WIN32API来构建GUI窗体组件。   三、WIN32 DLL 动态链接库。导出函数可以为多种调用约定,比如:Stdcall(标准WINAPI)、 Cdecl(兼容C语言)、Pascal 。可供给其它语言调用。   四、静态链接库。供给标准的C语言调用链接。就是说NB的静态库是兼容C语言的LIB,互相通用。 为了方便编写代码,附带专业级的多功能高级编辑器:支持文的语法高亮,工程管理,代码提示补全,智能缩进,自动完成,插件,模板等功能。并且针对汉字输入字数多的缺点,采用首拼输入命令提示关联到函数名,变量名,常量名。比如要输入“如果”只须键入“rg”(“如果”二字的首拼)就会在提示列表出现“如果”,选择即可输出“如果”到编辑器,方便快捷。 虽然NB目前还没有可视化的集成开发环境(Visual IDE),但NB提供了构建完整标准WIN32应用程序的所有功能。作为小巧的编程工具和初级水平程序员进阶学习工具。选择NB应该是NB的选择!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值