
汇编
文章平均质量分 86
世纪殇
一个不断保持前进的程序员,目前潜心在数据分析和中等网站架构设计中
展开
-
win32汇编程序的学习之一
首先说明笔者的学习环境:win7,Masm for Windows 集成实验环境 2012.5 任何种类的语言,总是有基本的源程序结构规范,同样win32 汇编程序也有,现在写下一个HelloWorld的汇编程序 .386.model flat,stdcalloption casemap:noneinclude windows.incinclude user32.原创 2013-08-26 19:29:27 · 805 阅读 · 0 评论 -
stdcall _cedel _fastcall函数调用
首先看一下堆栈框架,是这样的:;**********************************************TITLE 两个数的加法(堆栈传递参数);**********************************************;**********************************************;程序运行平台.386.MO原创 2013-12-08 20:52:26 · 1419 阅读 · 0 评论 -
汇编延时输出随机数
;***********************************************************************;TITLE 生成20个随机数;***********************************************************************;******************************原创 2013-12-01 18:27:48 · 959 阅读 · 0 评论 -
PROTO 之函数的使用
;*********************************************************************TITLE 使用函数声明交换两个整数;*********************************************************************;************************************原创 2013-12-09 19:58:15 · 1845 阅读 · 0 评论 -
汇编流程控制
;**************************************************************TITLE 取得三个数的最小值;**************************************************************;************************************************原创 2013-12-03 19:50:29 · 679 阅读 · 0 评论 -
汇编程序的CMPSB CMPSW CMPSD的使用
;**********************************************************TITLE CMPSB CMPSW CMPSD;**********************************************************;*****************************************************原创 2013-12-11 21:52:40 · 8527 阅读 · 1 评论 -
汇编程序的 movsb movsw movsd的使用
;*******************************************************TITLE movsb,movsw,movsd;*******************************************************;*******************************************************;程序原创 2013-12-11 20:54:07 · 2328 阅读 · 0 评论 -
汇编实现的 memcpy memset strstr
;**********************************************TITLE 汇编实现的 memcpy memset strstr;**********************************************;**********************************************;程序运行平台说明.386.MODE原创 2013-12-12 20:18:09 · 2373 阅读 · 0 评论 -
汇编.if 和.endif的应用
;***********************************************TITLE .IF和.ELSEIF;***********************************************;***********************************************;程序运行平台.386.MODEL FLA原创 2013-12-05 20:59:17 · 3935 阅读 · 0 评论 -
汇编语言的冒泡排序和二分法
;******************************************TITLE 汇编语言的冒泡排序的使用;******************************************;******************************************;程序平台说明.386.MODEL FLAT,STDCALLOPTION CASEMA原创 2013-12-13 17:31:45 · 1334 阅读 · 0 评论 -
汇编结构体的声明和引用
;*********************************************************TITLE 结构体的声明和引用;*********************************************************;*********************************************************;程序运原创 2013-12-13 19:44:25 · 2549 阅读 · 0 评论 -
汇编结构体的使用获取系统时间以及宏的定义和使用
;********************************************************TITLE 显示系统时间;********************************************************;********************************************************;程序运行平台说明.原创 2013-12-16 16:33:48 · 1171 阅读 · 0 评论 -
PE文件绑定,或者说多个exe文件的合并
思路: 是我自己想的,也许不会,也许别人已经做过了,但是不是重点,哈,我现在想将两个exe文件合并成为一个exe文件,那么就需要四个exe,现在说下这四个exe文件的作用分别是A.exe D.exe tmpA.exe tmpB.exeA.exe的作用是将tmpA.exe和tmpB.exe文件写入到D.exe当中去,这里tmpA.exe和tmpB.exe我们是不知道源码的,原创 2013-12-16 19:51:28 · 1911 阅读 · 0 评论 -
汇编语言的文件读取
;**************************************************TITLE 文件读写;**************************************************;**************************************************;运行平台说明.MODEL SMALL,STDCALLOPT原创 2013-12-19 16:54:10 · 13492 阅读 · 0 评论 -
汇编设置系统时间
;******************************************************;设置日期;******************************************************;******************************************************;程序运行平台说明.MODEL SMALL,ST原创 2013-12-20 15:40:11 · 1598 阅读 · 0 评论 -
【汇编】自定义9号中断(键盘输入处理中断)
在屏幕上交替显示a~z,按ESC字体变绿色 [plain] view plaincopyassume cs:code,ds:data data segment dw 0,0;存放原9号中断的偏移和段地址 data ends code segment ;;;;;;;;;;;;;;;;;;;;;; ;主程序 ;;;;;;;;;;;;;;;;转载 2013-12-21 19:48:10 · 3726 阅读 · 0 评论 -
汇编模块化处理
;**********************************************************************TITLE 整数求和;**********************************************************************;***************************************原创 2013-11-30 15:14:21 · 1325 阅读 · 0 评论 -
汇编小程序
;***********************************************************;*性能度量;***********************************************************;***********************************************************;*程序原创 2013-11-25 11:12:51 · 1018 阅读 · 0 评论 -
Assembly 筆記 - Ch5 程序
Library * Clrscr : 清除螢幕 call Clrscr * Crlf : 換行 call Crlf * Delay : 暫停程式的執行狀態 mov eax , 1000 ; 1秒 call Delay;转载 2013-11-25 16:24:41 · 817 阅读 · 0 评论 -
win32汇编语言学习之二
对于汇编语言来说win32环境中只有一种类型,那就是32位整数,例如MessageBoxA的四个参数 HWND,LPCTSTR,LPCTSTR,UINT之所以定义成不同的摸样主要是为了说明其用途,我们在汇编环境下调用MessageBoxA时,DOS状态下会是这样的: push uType push lpCaption push lpText push hWnd原创 2013-08-27 09:10:15 · 692 阅读 · 0 评论 -
汇编语言:一维数组的动态访问
笔者使用的是win7 和Masm for Windows集成环境共享版2012.5对于一维数组的访问,或许听上去简单的不得了,但是笔者也是用了将近两个小时才做到的,说来惭愧啊,怕以后忘记了,所以在这儿做个记录如果对于一维数组特定位置的访问,用我们的话说,就是索引是以立即数的方式给出,还是以变量的方式给出,现在我们说的是变量方式的动态访问.386.model flat,stdcall原创 2013-08-27 21:14:26 · 3711 阅读 · 0 评论 -
汇编学习-输出正方形
;输出一个正方形边框;输出一个正方形边框CODES SEGMENT ASSUME CS:CODES;输出10个‘_’Out_ proc mov cx,10OutInstruction:;真正的输出指令 mov dx,2dh mov ah,02h int 21h dec cx cmp cx,0 jnz OutInstructi原创 2013-08-30 16:06:15 · 2319 阅读 · 0 评论 -
汇编学习-在代码段使用数据以及多段的使用
shl和shr是逻辑移位指令。shl是逻辑左移指令,它的功能为:(1)将一个寄存器或内存单元中的数据向左移位;(2)将最后移出的一位写入CF中;(3)最低位用0补充。 指令:mov al,01001000bshl al,1 ;将al中数据左移一位 执行后(al)=10010000b,CF=0。 注意:如果移动位数大于1时,必须将移动位数放在cl中。比如,指令:mov al,01010001bmov原创 2013-08-31 15:39:06 · 1683 阅读 · 0 评论 -
获取加载Kernel32.dll的地址
一、几个重要的数据结构,可以通过windbg的dt命令查看其详细信息_PEB、_PEB_LDR_DATA、_LDR_DATA_TABLE_ENTRY二、技术原理1、通过fs:[30h]获取当前进程的_PEB结构2、通过_PEB的Ldr成员获取_PEB_LDR_DATA结构3、通过_PEB_LDR_DATA的InMemoryOrderModuleList成员获取_LIST_ENT转载 2013-08-30 19:15:29 · 2474 阅读 · 0 评论 -
shellcode获取MessageBoxA的地址
_asm{ push ebp;暂存基址 mov eax,fs:[30];获取PEB地址 mov eax,[eax+0ch];获取LDR地址 mov eax,[eax+14h];获得PEB_LDR_DATA中InMemoryOrderModuleListFlink的地址,该地址和LDR_DATA_TABLE_ENTRY中的Flink相同原创 2013-09-02 17:12:07 · 2898 阅读 · 0 评论 -
汇编程序多个数据段的使用
assume cs:codea segment db 1,2,3,3a endsb segment db 1,2,3,3b endsc1 segment db 1,2,3,3c1 endscode segmentstart:mov bx,0mov cx,4xor dx,dxAcumite:;设置a段为数据段mov ax,amov ds,axadd dl,ds:原创 2013-08-31 16:59:41 · 3163 阅读 · 0 评论 -
我的第一个win32汇编程序
.386.Model Flat,stdcalloption casemap:none;头文件包含include windows.incinclude kernel32.incincludelib kernel32.libinclude user32.incincludelib user32.libinclude gdi32.incincludelib gd原创 2013-10-01 16:22:59 · 1043 阅读 · 0 评论 -
WIN32汇编为按钮添加处理过程
由于笔者也是初学者,学到哪,也就写到哪,望各位大神见谅哈,本博文呢,主要是在主窗体中添加了一个button,但是该Button是动态添加的,也就是说使用了CreateWindowEx API函数,同时为该按钮的点击事件添加处理过程: 先说下原理,其实呢,很简单,就是先检查uMsg是否是WM_COMMAND,然后呢,就看看,触发事件的控件的ID是否使我们要处理的控件的ID,就这两样,但原创 2013-10-08 21:10:41 · 1345 阅读 · 0 评论 -
汇编中的资源文件脚本
菜单,图表与对话框都是可执行文件的组成部分,他们是以资源的形式存放在文件中的,但这些资源并不存放在数据段中,而是单独的放在一个节区当中。 资源文件是以".rc"为扩展名的脚本文件,由资源文件rc.exe编译成res为扩展名的二进制的资源文件,最后在link.exe文件链入可执行文件。//#include "resource.h"#define ICO_MAIN 1000H原创 2013-10-10 11:19:11 · 1357 阅读 · 0 评论 -
汇编中try catch的实现
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;平台定义.386.Model Flat,StdCallOption CaseMap:None;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;文件包含include原创 2013-10-14 15:22:24 · 1762 阅读 · 0 评论 -
CreateWindowEx返回1400
先不说了,直接上代码吧,妹的,调了好长时间就是不知道那里的错误,可,等发现了,却不知是哭是笑哈;;程序平台定义.386.Model Flat,StdCallOption CaseMap:None;;;文件包含include windows.incinclude kernel32.incinclude原创 2013-10-24 21:43:34 · 1488 阅读 · 0 评论 -
汇编语言的字节传送
;**********************************************************;程序运行平台说明.386.model flat,stdcalloption casemap:none;**********************************************************;**********原创 2013-11-17 09:27:54 · 2118 阅读 · 0 评论 -
VS2010汇编环境搭配
用Visual Studio.net 2010构建MASM编程环境并不复杂,这里将关键步骤总结一下,方便学习。如需进一步学习,可以参阅《Inetl汇编语言程序设计》一书的作者Kip R. Irvine的文章Getting Started with MASM 。 1. 构建空的解决方案 我的习惯是将每一章中的所有例子放置在同一个解决方案中。比如《Inetl汇转载 2013-11-07 10:12:16 · 1534 阅读 · 0 评论 -
简单的汇编程序解读
TITLE add and sub.386;表示程序使用的指令集.model flat,stdcall;表示程序使用的模型,flat表示使用所有的段使用同一个4GB段,stdcall表示API调用时右边参数先入栈option casemap:none;指明大小写敏感.stack 4096include Irvine32.incExitProcess PROTO,dwExit原创 2013-11-08 11:01:54 · 2398 阅读 · 0 评论 -
汇编语言中数组的应用
TITLE the USE OF ARRAY;****************************************************************;对程序运行平台的最小要求,也就是说程序使用的指令集合.386;程序运行模型,flat指的是数据段和代码段共同使用一个4GB的内存,;而stdcall指的是函数调用时使用的是自右向左压入堆栈的方式,同时函数原创 2013-11-09 09:23:05 · 8926 阅读 · 0 评论 -
汇编中数组的加法运算-包含进位
;***************************************************************TITLE 数组求和;***************************************************************;*****************************************************原创 2013-11-24 19:23:17 · 2264 阅读 · 0 评论 -
INT9h 中断例程的安装
;**************************************;程序运行平台.MODEL TINY,STDCALL;**************************************;**************************************;段说明.CODE rt_shift EQU 01H ctrl转载 2013-12-22 16:59:56 · 1501 阅读 · 0 评论