![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
汇编
spygg
这个作者很懒,什么都没留下…
展开
-
汇编16 总结
学习汇编其实就是学习怎样操纵寄存器8086 寄存器分为以下类:1.通用寄存器 ax,bx,cx,dx2.段寄存器 cs,ds,es,ss3.指针寄存器 ip, sp4.其他si,di,bp,psw和程序代码相关的有 CPU通过访问cs:ip来获得要执行的代码通过访问ds:数据 来访问数据通过 es:sp来访问原创 2012-08-03 20:16:37 · 786 阅读 · 0 评论 -
win32汇编调用c标准函数库
网上搜索了下没发现什么好方法,到aogprintf proto C :DWORDmalloc proto C :DWORD原创 2014-05-16 23:24:34 · 2405 阅读 · 0 评论 -
汇编引导区和测试
LBA_ADDR equ 250section bootload align=16 vstart=0x7c00start: mov ax, 0 mov ss, ax mov sp, ax mov ax, [cs:phy_addr] mov dx, [cs:phy_addr + 2] mov bx, 16 div bx mov ds, ax mov es, ax原创 2014-03-12 22:18:36 · 1907 阅读 · 0 评论 -
汇编中中括号[]作用以及lea和mov指令的区别
现在总结一下:其中牵扯到lea指令,mov指令,[]一.lea指令:对于寄存器来说:第二个操作数是寄存器必须要加[],不然报错,这里lea就是取[寄存器]的值,如:mov eax,2lea ebx,[eax];执行后ebx=2mov ebx,eax;等同于上句lea ebx,eax;编译器报错: error A2070: invalid instruction operan原创 2013-04-05 01:16:38 · 11192 阅读 · 0 评论 -
汇编中中括号的作用[]
在汇编中[]的作用不是单纯的c语言中指针类似,可以分为两种情况,对于变量来说[var]和var作用是一样的但是对于寄存器来说就有区别了,[eax]是eax的地址(这里是c语言中的指针) 而不加中括号的eax就是c语言中的变量值了,理解有谬误之处望指正.386.model flat, stdcalloption casemap :noneinclude windows.in原创 2013-03-29 22:14:30 · 20198 阅读 · 3 评论 -
关于Win32汇编的环境搭建(Win7)
书籍嘛,不用多说肯定是罗云彬大神的经典了(windows环境下32位汇编语言程序设计)编译器使用radasm这个汉化版很好用,包括了教程等,推荐,安装好后最好设置环境变量把radasm/masm32/路径下的lib 和include两个路径都加入环境变量(方法自己搜)关于资源编辑器不得不说radasm自带的resed不好用,个人推荐绿色软件ResEdit编辑好后另存为res文件后就好了原创 2013-01-12 11:44:38 · 1705 阅读 · 0 评论 -
汇编多线程
首先贴出来大神的代码,有点让我费解的是每次都要重新创建一个线程?;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>; Sample code for ; by 罗云彬, http://www.win32asm.com.cn;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>原创 2013-01-13 23:25:24 · 4414 阅读 · 0 评论 -
32汇编调试工具的使用
本文的主要目的是介绍在汇编调试的时候遇到LINK : fatal error LNK1104: cannot open file "\masm32\lib\kernel32.lib" 错误的情况.VKDebug调试工具是Masm32开发包中附带的一个调试工具,在Masm32程序中做输出调试是很方便的。 使用VKDebug很简单,只需像下面这样将debug.inc、debug.li转载 2013-01-25 22:35:48 · 1668 阅读 · 0 评论 -
汇编:判断两个字符串是否相等
;判断两个字符串是否相等相等输出match 否则no matchassume cs:code,ds:data data segmentstring1 db 100 dup(0)string2 db 100 dup(0)string3 db 'please input string 1 end by space',0dh,0ah,'$'stri原创 2012-08-03 20:07:39 · 5820 阅读 · 0 评论 -
读入两个数并选择加减法运算将结果输出
assume cs:code,ds:datadata segment a db 'input the first number( >=0, b db 0dh,0ah,'input the second number( >=0, d db 0dh,0ah,'chose the operation',0dh,0ah,'1:add 3:sub',0dh,0ah,'$'原创 2012-08-03 20:08:04 · 1143 阅读 · 0 评论 -
自己编写int 7ch中断实现loop指令在屏幕显示80个!
assume cs:codecode segmentstart: mov ax,cs mov ds,ax mov si,offset loopstart mov ax,0 mov es,ax mov di,200h mov cx,offset loopend-offset loopstart cld原创 2012-08-03 20:09:40 · 1193 阅读 · 0 评论 -
自己动手编写int 0处理程序
;①编写中断处理函数 do0,并存放到地址0:200h~0:2ff处;②设置中断向量:(覆盖原中断向量地址)assume cs:codecode segmentstart: mov ax,cs mov ds,ax ;设置源传送段地址 mov ax,0 mov es,ax ;设置目的传送段地址 mov si,offs原创 2012-08-03 20:10:15 · 1422 阅读 · 0 评论 -
汇编cmp以及ja,jb的应用
assume cs:code,ds:datadata segmentdb "Beingner's All-purpose Symbolic Instruction Code",0data endscode segmentstart: mov ax,data mov ds,ax mov si,0 mov dh,8 ;行号 mov d原创 2012-08-03 20:10:52 · 12116 阅读 · 0 评论 -
汇编通用程序设计
;程序功能:在指定的位置,用指定的颜色,显示一个用0结束的字符串.;参数:dh(行号),dl(列号),cl(颜色);注意本程序会有寄存器冲突问题,所以我的程序比较啰嗦,如果有高人望指点一二assume cs:code,ds:datadata segmentdb 'Welcome to masm!',0data endscode segmentst原创 2012-08-03 20:11:27 · 583 阅读 · 0 评论 -
汇编之显示器操控
;程序功能:以蓝底白字显示 'Welcome to masm!其他显示方式查阅相关资料assume cs:code,ds:datadata segmentdb 'Welcome to masm!'data endscode segmentstart: mov ax,data mov ds,ax mov ax,0b800h mov原创 2012-08-03 20:12:00 · 1013 阅读 · 0 评论 -
汇编 子函数
程序功能:计算1,2...等的3次方并保存到相邻的8个字形的内存中;用子函数来实现assume cs:code,ds:datadata segmentdb 1,2,3,4,5,6,7,8,8 dup(0)dw 8 dup(0)data endscode segmentstart: mov ax,data mov ds,ax mov c原创 2012-08-03 20:14:17 · 1052 阅读 · 0 评论 -
汇编小题目
;程序功能:将数据段中的小写字母变成大写;方法1:直接寻址assume cs:code,ds:datadata segmentdb 'ibm',13 dup(' ')db 'dec',13 dup(' ')db 'dos',13 dup(' ')db 'var',13 dup(' ')data endscode segmentstart: mov原创 2012-08-03 20:15:04 · 545 阅读 · 0 评论