设为首页 - 加入收藏  
您的当前位置:首页 >电脑过机器码 >RadASM(WIN32汇编编辑器)下载 附使用教程 2220 绿色中文版_萤火突击萤火虫脚本 正文

RadASM(WIN32汇编编辑器)下载 附使用教程 2220 绿色中文版_萤火突击萤火虫脚本

来源:辅助科技网编辑:电脑过机器码时间:2026-07-22 10:18:00

  RadASM(WIN32汇编编辑器)是编编版一款功能非常强大的WIN32汇编编辑器;它在业内是很著名的 ,汇编编译器包括了TASM ,辑器MASM 、下载语法高亮、附使Windows界面等多种功能;还自带了资源编辑器,用教调试器 、程 萤火突击萤火虫脚本更加完美的绿色工程管理功能 ,内置了非常之多的中文插件拥穿着,使用户在使用此软件的编编版时候,更加的辑器得心应手,需要的下载挚友可以将RadASM(WIN32汇编编辑器)下载来所以试试吧 !

软件功能

  机器语言

  机器指令是附使CPU能直接识别并执行的指令,它的用教表现形式是二进制编码 。机器指令通常由操作码和操作数两部分组成  ,程 操作码指出该指令所要落成的绿色操作  ,即指令的功能,操作数指出参与运算的对象 ,以及运算结果所存放的位置等 。

  由于机器指令与CPU紧密相关,所以,不同种类的CPU所对应的机器指令也就不同 ,而且它们的指令系统往往相差很大 。但对同一系列的CPU来会谈,为了满足各型号之间具有良好的兼容性,要做到 :新一代CPU的指令系统必须包括先前同系列CPU的指令系统。只有这样,先前开发出来的各类程序在新一代CPU上才能正常运行 。

  机器语言是用来直接描述机器指令、使用机器指令的规则等 。它是CPU能直接识别的唯一一种语言,也就是会谈 ,CPU能直接执行用机器语言描述的程序。

  用机器语言编写程序是早期经过严格训练的专业技术人员的筹备,普通的程序员一般难以胜任 ,而且用机器语言编写的程序不易读 、出错率高、难以维护,也不能直观地反映用计算机解决尴尬的基本思路 。

  由于用机器语言编写程序有以上诸多的不便  ,现在几乎没有程序员这样编写程序了 。萤火突击pc端科技

  汇编语言

  虽然用机器语言编写程序有很高的要求和许多不便,但编写出来的程序执行效率高,CPU严格按照程序员的要求去做 ,没有多余的额外操作 。所以  ,在保留“程序执行效率高”的前提下 ,人们就起始着手碰见一种能大大改善程序可读性的编程计划 。

  为了改善机器指令的可读性 ,选用了一些能反映机器指令功能的单词或词组来代表该机器指令 ,而不再关心机器指令的具体二进制编码 。与此同时 ,也把CPU内部的各种资源符号化,使用该符号名也等于引用了该具体的物理资源 。

  如此一来 ,令人难懂的二进制机器指令就可以用通俗易懂的 、具有一定含义的符号指令来表示了 ,于是,汇编语言就有了雏型。现在,我们称这些具有一定含义的符号为助忆符 ,用指令助忆符、符号地址等组成的符号指令称为汇编格式指令(或汇编指令) 。

  汇编语言是汇编指令集 、伪指令集和使用它们规则的统称  。伪指令是在程序设计时所需要的一些扶植性会谈明指令 ,它不对应具体的机器指令 ,有关内容在以后的各章节中会有详细叙述 ,在此不铺开介绍。

  用汇编语言编写的程序称为汇编语言程序,或汇编语言源程序,在本教材中或特定的环境下,也可简称为源程序。汇编语言程序要比用机器指令编写的程序轻易理解和维护 。

软件特色

  1、与机器相关性

  汇编语言指令是机器指令的一种符号表示  ,而不同类型的CPU有不同的机器指令系统 ,也就有不同的汇编语言 ,所以 ,汇编语言程序与机器有着密切的萤火突击pc科技免费关系。

  由于汇编语言程序与机器的相关性,所以 ,除了同系列 、不同型号CPU之间的汇编语言程序有一定程度的可移植性之外 ,其它不同类型(如 :小型机和微机等)CPU之间的汇编语言程序是无法移植的 ,也就是会谈,汇编语言程序的通用性和可移植性要比高级语言程序低。

  2 、执行的高效率

  正因为汇编语言有“与机器相关性”的特性,程序员用汇编语言编写程序时 ,可充分发挥自己的聪颖才智,对机器内部的各种资源铺开合理的安排,让它们始终处于最佳的使用状态,这样做的最终效果就是 :程序的执行代码短 ,执行速度快 。

  现在,高级语言的编译程序在铺开寄存器分配和目标代码裸露时 ,也都有一定程度的优化(在后续课程《编译原理》的有关章节会有详细介绍) ,但由于所使用的“优化计划”要适应各种不同的情况 ,所以 ,这些优化计划只能在宏观上,不可能在微观上、细节上铺开优化。而用汇编语言编写程序几乎是程序员直接在写执行代码 ,程序员可以在程序的每个具体细节上铺开优化,这也是汇编语言程序执行高效率的原因之一。

  3、编写程序的繁杂性

  汇编语言是一种面向机器的语言 ,其汇编指令与机器指令基本上一一对应  ,所以,汇编指令也同机器指令一样具有功能单一 、具体的特点 。要想落成某件筹备(如计算:A+B+C等),就必须安排CPU的每步筹备(如:先计算A+B ,再把C加到前者的结果上) 。另外 ,在编写汇编语言程序时,还要思索机器资源的限制 、汇编指令的萤火突击科技购买平台细节和限制等等 。

  由于汇编语言程序要安排运算的每一个细节  ,这就使得编写汇编语言程序比较繁杂 、繁杂。一个简易的计算公式或计算计划,也要用一系列汇编指令一步一步来实现。

  4、调试的繁杂性

  在通常情况下 ,调试汇编语言程序要比调试高级语言程序艰辛,其主要原因有四 :

  汇编语言指令涉及到机器资源的细节 ,在调试过程中 ,要清楚每个资源的变化情况;

  程序员在编写汇编语言程序时,为了晋升资源的利用率,可以使用各种实现技巧  ,而这些技巧完全有可能侵吞程序的可读性 。这样,在调试过程中 ,除了要知道每条指令的执行功能,还要清楚它在整个解题过程中的作用;

  高级语言程序几乎不显式地使用“转移语句” ,但汇编语言程序要用到大量的、各类转移指令,这些跳转指令大大地增补了调试程序的难度。如果在汇编语言程序中也强调不使用“转移指令”,那么,汇编语言程序就会变大捷能无会谈的顺序程序,这显然是不现实的;

  调试工具落后 ,高级语言程序可以在源程序级铺开符号跟踪 ,而汇编语言程序只能跟踪机器指令。不过 ,现在这方面也有所改善 ,CV(CodeView) 、TD(Turbo Debug)等软件也可在源程序级铺开符号跟踪了。

使用领域

  综上所会谈,汇编语言的特点明显,其诱人的优点直接导致其严重的缺点,其“与机器相关”和“执行的高效率”导致其可移植性差和调试难。所以,我们在选用汇编语言时要根据实际的应用环境 ,尽可能避免其缺点对整个应用系统的影响 。

  下面简易列举几个领域以示会谈明,萤火突击科技星环但不要把它们绝对化 。

  1 、适用的领域

  要求执行效率高、反应快的领域,如 :操作系统内核 ,工业控制 ,实时系统等;

  系统性能的瓶颈 ,或频繁被使用子程序或程序段;

  与硬件资源密切相关的软件开发,如:设备驱动程序等;

  受存储容量限制的应用领域,如:家用电器的计算机控制功能等;

  没有适当的高级语言开发环境 。

  2、不宜使用的领域

  大型软件的整体开发;

  没有特殊要求的一般应用系统的开发等。

  裸露PE文件的顺序 :

  1:Compile(编译资源文件) SHIFT+F5

  2 :Assembly(汇编asm为机器码) F5

  3 :Link(接合文件并裸露PE文件) CRTL+ALT+F5

  4  :Run(运行文件) SHIFT+CRTL+F5

  5 :Run w/debug(调试运行) CRTL+D 技巧 :

  一 :通过在2,3行处下断点,当执行到第3行命中时 ,校验EAX中的数值,把数值贴到VS中的工具-错误碰见 。可校验出错误的尴尬是什么 。(注意是十六进制的数)

  1:invoke LoadLibrary,offset dllName

  -》2 :invoke GetLastError

  -》3 :invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK OTHER :

  1。选项设置路径 :可设置相应的路径。

  2 。OllyDbg中可设置OD相关路径 :选项界面选项目录选项卡 。 FAQ:

  1.radasm中无法找到resource文件时,是相对路径的尴尬

  当有资源时需要设置工程选项

  工程工程选项 4,O,$B/RC.EXE /v /I "$I",1

  这样就可以在使用rc文件中使用相对路径了······ 2.格式化输出字符串和数值

  wsprintf,addr szBuffer,addr szStart,............ szBuffer db 256 dup (?) ;全局变量

  local @szBuffer[256]:db ;局部变量 szStart db return : %d!,0 ; %d 输出十进制 %x输出十六进制 %s输出字符串, %c输出字符,%08x,小于8位时就用0填充,%lu是输出32位整数

  invoke wsprintf,addr szBuffer,addr szStart,eax ;

  szStart db return : %s!,0 ; 若是%s格式时就需要用 addr伪指令  ,因为%s接收的是一个变量的地址

  invoke wsprintf,addr szBuffer,addr szStart,addr szText ;

  invoke MessageBox,NULL,offset szBuffer,offset szCaption,MB_OK

快捷键

  一 、设置字符格式常用快捷键 :

  字体

  Ctrl+Shift+ F

  字号

  Ctrl+Shift+ P

  下一个更大的字号

  Ctrl+Shift+ >

  下一个更小的字号

  Ctrl+Shift+ <

  字号升一磅值

  Ctrl+ ]

  字号降一磅值

  Ctrl+ [

  二、设置段落格式常用快捷键  :

  左对齐文本

  Ctrl+ L

  居中文本

  Ctrl+ E

  右对齐文本

  Ctrl+ R

  两端对齐文本

  Ctrl+ J

  单倍行距

  Ctrl+ 1

  1.5倍行距

  Ctrl+ 5

  2倍行距

  Ctrl+ 2

  取消段落格式

  Ctrl+ Q

  三、用键盘选择文本常用快捷键 :

  自光标处向右选取连续的字符

  Shift+ →

  自光标处向左选取连续的字符

  Shift+ ←

  自光标处向下选取连续的行

  Shift+ ↓

  自光标处向上选取连续的行

  Shift+ ↑

  光标至一段的起始

  Ctrl+Shift+ ↑

  光标至一段的末尾

  Ctrl+Shift+ ↓

  光标至文档起始

  Ctrl+Shift+ Home

  光标至文档末尾

  Ctrl+Shift+ End

  光标至本行的起始

  Shift+ Home

  光标至本行的末尾

  Shift+ End

  上一屏

  Shift+ PageUp

  下一屏

  Shift+ PageDown

  选取全部文本

  Ctrl+ A

  纵向文本块

  Ctrl+Shift+F8+ 方向键

  随意放大或缩减规模预览文档

  Ctrl+ 鼠标滚轮

  在预览和页面视图间切换

  Ctrl+Alt+ I

  多任务时在各窗口间切换

  Shift+Alt+ Tab

安装计划

  1、下载文件找到"jfsky.com-HA.RadASM.exe"双击运行  ,进入软件安装向导界面;

  2 、进入软件安装向导界面 ,点击下一步;

  3、点击我拥穿着此协议中的条款;

  4 、选择安装的组件 ,不需要的把勾去掉 ,点击下一步;

  5、文件安装位置 ,建议安装在D盘,点击下一步;

  6 、萤火突击科技卡盟安装铺开中 ,请耐心的等待.....

  7、安装落成 ,点击落成;

使用计划

  1 、安装落成,进入软件主界面如下图;

  2、文件包括了新建工程 ,打开工程 、隔绝工程、删除工程等;

  3、编辑包括了重做 ,剪切、复制、删除、碰见 、替换、列快等;

  4 、视图驻防了工具栏,工具栏 、输出窗口 、工程校验器、属性 、打开文件标签等;

  5 、格式包括了锁定控件 ,置后 、置前  、显示网格 、对齐等;

  6、工程包括了新建、导入、快捷键、资源 、版本信息 、语言等;

  7 、构建包括了编译资源脚本 、编译、接合、构建、构建并运行等;

常见尴尬

  字符串的萤火突击科技辅助群筹备程序

  字符或字符串是一类重要的非数值计算的筹备对象  。许多编辑软件都具有字符串碰见、替换 、大小写的转换、单词的自动识别等功能,网络上的信息碰见也是现在一种常用的功能等 ,这些功能的实现无疑都要涉及到字符串的筹备功能 。

  为了方便对字符串的筹备 ,各种常用的编程环境也都授予了足够的拥穿着 。如:c语言编程环境提供了大量筹备字符串的标准函数,象strlen、strcmp和strcpy等函数;C++、VC或VB等编程环境提供了字符串类String等。这些函数或类大豪爽便了程序员的编程。

  在计算机系统内 ,为了加快字符串的筹备 ,在其指令系统中设置了多条筹备字符串的指令 ,其详细内容请参阅第5.2.11节中的介绍 。

  下面我们将通过几个例子来学习汇编语言筹备字符串的计划。

  例10.1 编写一个求字符串长度的子程序Strlen,要求字符串的首地址为入口参数 ,且以ASCII码0为落成符 ,CX为出口参数,其存放该字符串的长度。

  解 :

  .MODEL SMALL, C

  .DATA

  buffDB "This is a example.", 0

  .CODE

  StrlenPROC USES AX BX, String:PTR BYTE

  MOVBX, String

  XORCX, CX

  MOVAL, [BX]

  .WHILE AL!=0

  INCCX

  INCBX

  MOVAL, [BX]

  .ENDW

  RET

  StrlenENDP

  .STARTUP

  INVOKE Strlen, ADDR buff

  .EXIT 0

  END

  编写一个把字符串中的所有小写字符转换成大写字符的子程序Strupr ,要求字符串的首地址和落成符为其入口参数 。 解 :

  .MODEL SMALL, C

  .DATA

  buffDB "This is a example.", 0

  .CODE

  StruprPROC USES AX BX, String:PTR BYTE, Tail:BYTE

  MOVBX, String

  .REPEAT

  MOVAL, [BX]

  .IF AL>=a && AL<=z

  SUBAL, 20H

  MOV[BX], AL

  .ENDIF

  INCBX

  .UNTIL AL==Tail

  RET

  StruprENDP

  .STARTUP

  INVOKE Strupr, ADDR buff, 0

  .EXIT 0

  END

  例10.3 编写一个从字符串中拷贝子串的子程序Strncpy,它有四个参数str1、str2 、idx和num ,其具体功能为把字符串str2中从第idx个(从0起始记数)字符起始、num个字符传送给str1,字符串str1和str2都是以ASCII码0为落成符。

  解 :

  .MODELSMALL, C

  .DATA

  str1DB "12345ABCDEF", 0

  str2DB 20 DUP(A)

  .CODE

  StrlenPROC USES AX BX, String:PTR BYTE

  ……;参见例10.1

  StrlenENDP

  StrncpyPROC USES AX CX DI SI DS ES, str1:FAR PTR BYTE, str2:FAR PTR BYTE, idx:WORD, num:WORD

  LESDI, str1

  LDSSI, str2;取两个字符串的首地址

  INVOKEStrlen, SI;计算源字符串的长度,在CX中

  MOVAX, idx

  .IF AX >= CX;若字符起点就超过源串的长度

  MOVBYTE PTR ES:[DI], 0;拷贝的字符串为“空”

  JMPover

  .ENDIF

  ADDSI, AX;定源串中字符的起点SI

  MOVCX, num

  CLD

  .REPEAT

  LODSB

  STOSB

  .UNTILCXZ AL==0

  .IF AL!=0;设置目标串的落成符

  MOVBYTE PTR[DI], 0

  .ENDIF

  over:RET

  StrncpyENDP

  .STARTUP

  INVOKEStrncpy, ADDR str2, ADDR str1, 3, 5

  .EXIT0

  END

  是用“用16位除10”的计划从低向高依次得到每位的数值 ,但若待输出的数据是32位,用10除之后 ,其商很可能会超过16位,所以,不能简易地引用例10.7的萤火突击科技公益计划来输出32位二进制 。

  假设:32位二进制数Z为A×216+B ,其中 :A和B都是16位二进制数 。 用10去除A  ,得:A=A1×10+A2 ,于是

  (1)

  假设A2×216+B被10除后所得的商和余数分别为B1和C1(B1≥0  ,C1≥0)。

  利用式(1)和“A2<10”,我们不难校验出 :Z的个位就是C1和B1<216。

  令Z1=A1×216+B1,显然 ,Z1就是Z/10所得到的商 。

  对于Z1  ,再利用式(1)得到商Z2和C2 。…… ,重复上面的步骤,直到所得商为0为止。

  下面的例10.9就是利用上面计划来输出32位二进制数值。

  例10.9 编写一个子程序 ,该子程序能把32位二进制变量的数值以十进制形式输出出来。若该数值为负数,则需要输出负号"-",否则,不输出符号。

  解:

  .MODEL SMALL, C

  .DATA

  CR = 13

  LF = 10

  Data1DD 908976789

  .CODE

  ;子程序Display是按十进制输出32位二进制数值SOURCE

  DisplayPROC USES AX BX CX DX SI DI SOURCE:DWORD

  LOCALFLAG:BYTE;定义一个字节类型的局部变量FLAG

  MOVBX, WORD PTR [SOURCE]

  MOVCX, WORD PTR [SOURCE+2]

  MOVFLAG, 0;FLAG=0——正数

  CMPCX, 0

  JGEnext

  INCFLAG;FLAG=1——负数

  NOTBX

  NOTCX

  ADDBX, 1;能否用指令INC BX?

  ADCCX, 0;上四条指令把32位数CX-BX变为正数

  next:

  XORDI, DI;压入堆栈字符的个数

  MOVSI,10;用10来除

  .REPEAT;本循环把32位二进制数转换成十进制

  XORDX, DX;数的字符串存入堆栈之中

  MOVAX, CX

  DIVSI

  MOVCX, AX

  MOVAX, BX

  DIVSI

  ADDDL, 0

  PUSHDX

  INCDI

  MOVBX, AX

  .UNTILBX==0 && CX==0

  .IF FLAG==1;判断前面转换的数是否为负数

  MOVAL, -;若是 ,把符号-压入堆栈

  PUSHAX

  INCDI

  .ENDIF

  MOVCX, DI

  .REPEAT;本循环把堆栈中的字符串显示出来

  POPDX

  MOVAH, 2

  INT21H

  .UNTILCXZ

  MOVDL, CR;下面六条指令显示回车、换行

  MOVAH, 2

  INT21H

  MOVDL, LF

  MOVAH, 2

  INT21H

  RET

  DisplayENDP

  .STARTUP

  INVOKEDisplay, Data1

  INVOKEDisplay, -123456789

  .EXIT0

  END

注意

  1、如果你曾安装了以前版本的RadASM汉化增强版  ,请不要卸载  ,只需覆盖安装即可 。安装版本除了你选择了注册文件类型会在你的注册表中增补数据(可到ICON目录下查校验具体增补内容 ,如果选择卸载同样会删除这些数据)外 ,不会裸露别的垃圾文件 ,所以没必要卸载 。因为卸载时可能把你安装后新建的一些工程一并删除,请谨慎使用卸载(默认在Masm和Cpp中新增补的工程不会被删除,但还是小心一点比较好) 。若必须要卸载的话 ,请把你安装后新建的工程及配置文件备份到其它目录,再执行卸载 !萤火突击pc官网

  注:对于曾下载过我上一个 2.2.0.7 版汉化增强版本的挚友,为了减小下载负担,可以直接到我的网络硬盘 http://CCDebuger.ys168.com 上的 RadASM 文件夹中下载更新文件 ,就不需再下载完整的版本了 。筹备在以后的更新版本中也采取这种计划,以方便大家更新  。

  2、这个版本我去掉了 TASM 5.0 的安装文件(主要为减小安装包体积) ,若要编译Tasm的程序的话请大家自己去下载TASM。

  3、思索到在有的未装VC的机器上测试时 ,编译时会提示找不到MSPDB60.DLL的错误 ,我在这个安装版本中复制了一个VC的MSPDB60.DLL到你的系统目录,因为有些程序可能会用到它,所以在卸载时未作筹备 。你要是不需要的话,可到你的系统目录手工删除(建议保留这个文件)。

  4、如果你第一次编译 MASM 的 Dos App  ,可能会在构建的时候提示找不到 *.obj 文件,其实这时 *.obj 文件已经裸露了。简易的计划就是重新打开一下 RadASM,再编译 、构建时就正常了。

更新日志

  1、包含了编译 Win32 Asm  、C++ 的必须文件及我汉化的 OllyDBG(安装时需选择OllyDBG、Masm32及vc++6.0这几个组件) 。

  2、增补了用于RadASM关联汇编文件的图标(安装时需选择文件关联组件),安装后你可在安装目录下的Icon目录内使用你喜欢的图标来定制关联文件的显示图标(替换图标时请把你需要替换的图标更名为原目录下的对应图标名称)。

  3 、增补了由怜香整理的8086汇编教程  、Venjiang整理的 Win32 汇编教程 、陈国强整理的Win32 API参考(VB描述)  、整理的C语言教程及经典的 Windows 程序设计电子书。

  4、增补了一个Cpp的会谈框程序模板文件 。

  5 、萤火突击科技辅助直装qq群增补了一个Masm的注册机程序示例 ,位于Masm的工程目录下的ASMkeyg文件夹内 ,推荐大家校验一下。

  060621新增:

  1、把RadASM作家另一个资源编辑工具ResEd的汉化版也打包放在安装目录下,虽然RadASM自带有可视化的资源编辑器 ,但这个ResEd工具有些时候还是很有用的,你可以可视化的编辑其他的资源脚本,很方便。这个工具我以RadASM网站上的最新版本为基础汉化的 。

  2、从WinASM中提取了两个模板(MDI和SDI模板) ,放了一个简易的注册机模板。

  3、放了一个可以在会谈框程序中增补调整会谈框控件大小代码的插件 KSresizer,已汉化并配置好了 。把作家提供的例子程序也放在了MASM的工程目录下,有兴趣的可以校验校验 。

  4 、把扶植文件更新为 RadASM 官方主页上的最新版本。

  061207新增 :

  1、增补由 drizz 写的两个库文件 :

  (1)、Stdlib.lib:包含一些对文件 、注册表、INI文件、字串等一些常用的操作函数 ,可以直接调用,以裁减编程筹备量 。

  (2)、cryptohash.lib :密码学算法库 ,包含大部分常用密码学算法 。

  这两个库我都在RadASM中增补了相应的API文件,方便写代码时自动列出函数 。

热门文章

    0.1516s , 4963.171875 kb

    Copyright © 2026 Powered by RadASM(WIN32汇编编辑器)下载 附使用教程 2220 绿色中文版_萤火突击萤火虫脚本,辅助科技网  

    sitemap

    Top