masm

DNA图谱 / 问答 / 标签

DOSBOX 为什么无法使用masm指令?

masm是宏汇编 吧你得有 这个 汇编程序啊

win7为什么运行不了masm5.0??? 运行masm时,弹出“此文件的版本与正在运行的Windows版本不兼容。请检查

由于你的操作系统是64位的,这个只能运行在32位系统下。

masm显示unable to open input file的问题

尝试将1.asm放到C根目录下 第一次回车后[1.obj]:这个地方输入c:1.obj 后两次照常回车,看看能不能在C根目录下生成功obj文件

用汇编语言masm做 :编一个程序, 把从键盘输入的小写变成大写并显示出来

只要是字母,无论大写变小写还是小写变大写,下面这条指令是通用的。 xor al,20h ;假设这个字母存于al中。至于接受键盘输入、显示字符等,请楼主自行编制。若是初学,编不出来,也可代劳。

masm5.0不能使用咋回事?

你先运行masm.exe 然后输入a.ASM看看行不行。话说MASM和Win7不兼容的,要装虚拟机或双系统。

MASM中typedef proto 和 typedef ptr数据定义疑问?

_ProtoGetProcAddress typedef proto :dword,:dword 函数原型声明,告诉编译器_ProtoGetProcAddress 是个函数(proto),有两个参数,都是dword类型 _ApiGetProcAddress typedef ptr _ProtoGetProcAddress 声明ApiGetProcAddress,它是一个函数指针类型 这些就相当于定义结构体一样,是创建新的变量类型

masm怎么设置段编译起始地址

ip 的地址 由程序尾部的end start 语句设置,这是规定动作,不能改变。数据段的偏移地址 用 mov.... offset/ lea 指令获取;或者 在定义数据时增加一些 org 指令,如此你可直接使用 org指令指定的固定偏移值的准确数值地址。另数据段的起始偏移地址是从0开始的。

MASM与LINK错误。

那个不是错误 是警告 你说没有定义栈段 无关紧要 不要管它。直接生成

这个是asm文件,masm是显示l1: dl,bl有错误,dos显示expected : inst

程序不完整,只能就所能看到的地方说说我的看法:L1: mov dl,bl这句没有错误,masm许多时后报错提示的具体位置并不准确。你这个程序,就上面显示的部分来看,有如下致命错误:L: mov ah,1 ...... ...... jmp L lea bx, string ;上面的程序实际是一个死循环 cmp bx, 24h ;永远也不会运行到这3句代码 je exit ;所以程序运行无法退出L1: mov dl, bl

我的汇编程序里面在编译过程中经过MASM后提示1 severe non_diget 这是什么错误,希望帮解答

C语言编程出错提示英汉对照表Ambiguous operators need parentheses -----------不明确的运算需要用括号括起 Ambiguous symbol ""xxx"" ----------------不明确的符号 Argument list syntax error ----------------参数表语法错误 Array bounds missing ------------------丢失数组界限符 Array size toolarge -----------------数组尺寸太大 Bad character in paramenters ------------------参数中有不适当的字符 Bad file name format in include directive --------------------包含命令中文件名格式不正确 Bad ifdef directive synatax ------------------------------编译预处理ifdef有语法错 Bad undef directive syntax ---------------------------编译预处理undef有语法错 Bit field too large ----------------位字段太长 Call of non-function -----------------调用未定义的函数 Call to function with no prototype ---------------调用函数时没有函数的说明 Cannot modify a const object ---------------不允许修改常量对象 Case outside of switch ----------------漏掉了case 语句 Case syntax error ------------------ Case 语法错误 Code has no effect -----------------代码不可述不可能执行到 Compound statement missing{ --------------------分程序漏掉"{" Conflicting type modifiers ------------------不明确的类型说明符 Constant expression required ----------------要求常量表达式 Constant out of range in comparison -----------------在比较中常量超出范围 Conversion may lose significant digits -----------------转换时会丢失意义的数字 Conversion of near pointer not allowed -----------------不允许转换近指针 Could not find file ""xxx"" -----------------------找不到XXX文件 Declaration missing ; ----------------说明缺少";" houjiuming Declaration syntax error -----------------说明中出现语法错误 Default outside of switch ------------------ Default 出现在switch语句之外 Define directive needs an identifier ------------------定义编译预处理需要标识符 Division by zero ------------------用零作除数 Do statement must have while ------------------ Do-while语句中缺少while部分 Enum syntax error ---------------------枚举类型语法错误 Enumeration constant syntax error -----------------枚举常数语法错误 Error directive :xxx ------------------------错误的编译预处理命令 Error writing output file ---------------------写输出文件错误 Expression syntax error -----------------------表达式语法错误 Extra parameter in call ------------------------调用时出现多余错误 File name too long ----------------文件名太长 Function call missing -----------------函数调用缺少右括号 Fuction definition out of place ------------------函数定义位置错误 Fuction should return a value ------------------函数必需返回一个值 Goto statement missing label ------------------ Goto语句没有标号 Hexadecimal or octal constant too large ------------------16进制或8进制常数太大 Illegal character ""x"" ------------------非法字符x Illegal initialization ------------------非法的初始化 Illegal octal digit ------------------非法的8进制数字 houjiuming Illegal pointer subtraction ------------------非法的指针相减 Illegal structure operation ------------------非法的结构体操作 Illegal use of floating point -----------------非法的浮点运算 Illegal use of pointer --------------------指针使用非法 Improper use of a typedefsymbol ----------------类型定义符号使用不恰当 In-line assembly not allowed -----------------不允许使用行间汇编 Incompatible storage class -----------------存储类别不相容 Incompatible type conversion --------------------不相容的类型转换 Incorrect number format -----------------------错误的数据格式 Incorrect use of default --------------------- Default使用不当 Invalid indirection ---------------------无效的间接运算 Invalid pointer addition ------------------指针相加无效 Irreducible expression tree -----------------------无法执行的表达式运算 Lvalue required ---------------------------需要逻辑值0或非0值 Macro argument syntax error -------------------宏参数语法错误 Macro expansion too long ----------------------宏的扩展以后太长 Mismatched number of parameters in definition ---------------------定义中参数个数不匹配 Misplaced break ---------------------此处不应出现break语句 Misplaced continue ------------------------此处不应出现continue语句 Misplaced decimal point --------------------此处不应出现小数点 Misplaced elif directive --------------------不应编译预处理elif Misplaced else ----------------------此处不应出现else houjiuming Misplaced else directive ------------------此处不应出现编译预处理else Misplaced endif directive -------------------此处不应出现编译预处理endif Must be addressable ----------------------必须是可以编址的 Must take address of memory location ------------------必须存储定位的地址 No declaration for function ""xxx"" -------------------没有函数xxx的说明 No stack ---------------缺少堆栈 No type information ------------------没有类型信息 Non-portable pointer assignment --------------------不可移动的指针(地址常数)赋值 Non-portable pointer comparison --------------------不可移动的指针(地址常数)比较 Non-portable pointer conversion ----------------------不可移动的指针(地址常数)转换 Not a valid expression format type ---------------------不合法的表达式格式 Not an allowed type ---------------------不允许使用的类型 Numeric constant too large -------------------数值常太大 Out of memory -------------------内存不够用 houjiuming Parameter ""xxx"" is never used ------------------能数xxx没有用到 Pointer required on left side of -> -----------------------符号->的左边必须是指针 Possible use of ""xxx"" before definition -------------------在定义之前就使用了xxx(警告) Possibly incorrect assignment ----------------赋值可能不正确 Redeclaration of ""xxx"" -------------------重复定义了xxx Redefinition of ""xxx"" is not identical ------------------- xxx的两次定义不一致 Register allocation failure ------------------寄存器定址失败 Repeat count needs an lvalue ------------------重复计数需要逻辑值 Size of structure or array not known ------------------结构体或数给大小不确定 Statement missing ; ------------------语句后缺少";" Structure or union syntax error --------------结构体或联合体语法错误 Structure size too large ----------------结构体尺寸太大 Sub scripting missing ] ----------------下标缺少右方括号 Superfluous & with function or array ------------------函数或数组中有多余的"&" Suspicious pointer conversion ---------------------可疑的指针转换 Symbol limit exceeded ---------------符号超限 Too few parameters in call -----------------函数调用时的实参少于函数的参数不 Too many default cases ------------------- Default太多(switch语句中一个) Too many error or warning messages --------------------错误或警告信息太多 Too many type in declaration -----------------说明中类型太多 houjiuming Too much auto memory in function -----------------函数用到的局部存储太多 Too much global data defined in file ------------------文件中全局数据太多 Two consecutive dots -----------------两个连续的句点 Type mismatch in parameter xxx ----------------参数xxx类型不匹配 Type mismatch in redeclaration of ""xxx"" ---------------- xxx重定义的类型不匹配 Unable to create output file ""xxx"" ----------------无法建立输出文件xxx Unable to open include file ""xxx"" ---------------无法打开被包含的文件xxx Unable to open input file ""xxx"" ----------------无法打开输入文件xxx Undefined label ""xxx"" -------------------没有定义的标号xxx Undefined structure ""xxx"" -----------------没有定义的结构xxx Undefined symbol ""xxx"" -----------------没有定义的符号xxx Unexpected end of file in comment started on line xxx ----------从xxx行开始的注解尚未结束文件不能结束 Unexpected end of file in conditional started on line xxx ----从xxx 开始的条件语句尚未结束文件不能结束 Unknown assemble instruction ----------------未知的汇编结构 houjiuming Unknown option ---------------未知的操作 Unknown preprocessor directive: ""xxx"" -----------------不认识的预处理命令xxx Unreachable code ------------------无路可达的代码 Unterminated string or character constant -----------------字符串缺少引号 User break ----------------用户强行中断了程序 Void functions may not return a value ----------------- Void类型的函数不应有返回值 Wrong number of arguments -----------------调用函数的参数数目错 ""xxx"" not an argument ----------------- xxx不是参数 ""xxx"" not part of structure -------------------- xxx不是结构体的一部分 xxx statement missing ( -------------------- xxx语句缺少左括号 xxx statement missing ) ------------------ xxx语句缺少右括号 xxx statement missing ; -------------------- xxx缺少分号 houjiuming xxx"" declared but never used -------------------说明了xxx但没有使用 xxx"" is assigned a value which is never used ----------------------给xxx赋了值但未用过 Zero length structure ------------------结构体的长度为零

求助高手,安装了MASM之后,DOS下的中文乱码,怎么办?

估计是dos没设置好,在运行中输入cmd按回车,打开之后最小化,在任务栏中找到右击—>默认值——>选项中最下面的默认代码页可以设置简体中文,如果不行,你再打开java编译器中的dos窗口也同样设置试试,我在运行vc++的dos环境时也是同样出现乱码现象了,我没试过java的,我估计一样哇,希望能帮到你。

masm未生成EXE文件

你执行LINK命令之后,并没有收到任何信息,你可以看看执行MASM命令之后有没有生成OBJ文件就可以知道是哪个命令出错我用的是masm5,可是我下了一个masm8里面并没有masm.exe这个文件。是不是有的masm版本它的编译命令不是masm了?

你好请问masm for windows 集成实验环境打不开,点击没反应,重装了还是一样 这个最后怎么打开的呀?

MASM是比较古老的汇编语言编译环境,不一定能支持比较新的操作系统。建议你看看MASM的支持环境要求,或者在版本的Windows系统上安装。

用MASM编译程序时出现了大量的sumbol not defined符号未定义错误

我来解释一下上面那位说的,例如程序的2-6行,这些存在问题的行所用的缩进可能用的是全角空格字符,而不是一般tab字符或者是普通的半角空格字符,换一下就好了。全角半角看输入法。

汇编语言之新手的困惑:一个程序用masm、link和用ml来编译结果不同??

MOV DS:[0], "H"用 MASM 编译时,就会提示:XX.ASM(13): error A2035: Operand must have size楼主是怎么通过编译的呢?

求助:如何完全卸载MASM集成环境

你下载的是不带编译器的纯C::B集成环境。如果你的系统里有MinGW或Cygwin的编译器,可以自行配置指定路径;如果没有,那么最简单的解决方案是,卸载现有的C::B,下载codeblocks-13.12mingw-setup.exe或codeblocks-13.12mingw-setup-TDM-GCC-481.exe(这两个分别是带MinGW编译器或TDMGCC编译器的C::B版本),安装即可~

masm 为什么生成exe文件后,却不能进行debug调试?

除了exe文件较大,超出了debug的调试能力,否则是可以用debug进行调试的。但若转化为com格式的文件,调试起来就非常方便了。较大的exe文件可以使用微软的cv.exe程序进行调试。

汇编语言里用ml.exe编译和用masm.exe编译有什么区别

MASM.EXE 执行之后,还需要执行 LINK.EXE,才能生成可执行文件。ML.EXE,一个程序即可自动完成 MASM.EXE、LINK.EXE。

如何让自己电脑在操作DOS时能打开masm目录?还有link?

首先,你使用的不是纯DOS。。。要先直接调用MASM请先在“系统”中注册MASM的环境。如果不打算这么做只是临时用的话,直接用DOS命令移到MASM所在文件夹即可。可能会用到的DOS指令有:CD,DIR,link

masm编译的时候出现Error A2901 :cannot run ML.EXE。怎么解决?谢谢

这个问题的出现是因为没有设置好可执行文件在当前文件夹的下。如Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp.C:Documents and SettingsAdministrator>E:E:>masm611BINMASM 4-8.asmMicrosoft (R) MASM Compatibility DriverCopyright (C) Microsoft Corp 1993. All rights reserved. Invoking: ML.EXE /I. /Zm /c /Ta 4-8.asmerror A2901: cannot run ML.EXE错的地方是:E:>masm611BINMASM 4-8.asm正确的写法是:E:>cd masm611E:MASM611>cd BINE:MASM611BIN>MASM 4-8.ASMMicrosoft (R) MASM Compatibility DriverCopyright (C) Microsoft Corp 1993. All rights reserved. Invoking: ML.EXE /I. /Zm /c /Ta 4-8.ASMMicrosoft (R) Macro Assembler Version 6.11Copyright (C) Microsoft Corp 1981-1993. All rights reserved. Assembling: 4-8.ASM这里要用到DOS下的cd命令来切换到可执行文件的文件夹下 再执行可执行文件 就不会发生Error A2901 :cannot run ML.EXE的问题了。如有陈述不正确的地方,请大家指正。谢谢!

win10系统的masm里面dosbox有多少行和80列?

25行、80列,这是过去的字符屏幕的规格化的标准数据。

masm error85:END of file,no END directive

1.CODE SEGMENT PARA PUBLIC "CODE" ASSUME CS:CODE START: MOV AX,7000H MOV DS,AX MOV DL,[0000H] ;FOR TEST ;MOV DL,01000101B TEST DL,00000001B JNZ FIRST TEST DL,00000100B JNZ D3 TEST DL,01000000B JNZ D6 JMP END;此条指令错误,END是保留字,不能用作指令的标号,应该改为JMP END1FIRST: TEST DL,00000100B JNZ SECOND MOV AX,2000H JMP AX ;D0=1 AND D3=0 SECOND:TEST DL,01000000B JNZ D ;D0=D3=D6=1 D3: MOV AX,2400H JMP AX ;D0=0 AND D3=1 D6: MOV AX,2800H JMP AX ;D0=D3=0 AND D6=1 D: MOV AX,3000H JMP AX END: ;D0=D3=D6=0 ;此条指令错误,END是保留字,不能用作指令的标号,应该改为END1:MOV AH,4CH INT 21H CODE ENDS END START 2.此程序无错误CODE SEGMENT PARA PUBLIC "CODE" ASSUME CS:CODE START: MOV AX,7000H MOV DS,AX MOV SI,0000H ;FOR TEST ;MOV AX,0AAH ;MOV [SI+10],AX MOV CX,100H ;MOV CX,0FFFFH L1: MOV AL,[SI] CMP AL,0AAH JZ TRANSFER INC SI LOOP L1 TRANSFER:MOV CX,20H MOV AX,8000H MOV ES,AX MOV DI,0000H REP MOVSB MOV AH,4CH INT 21H CODE ENDS END START

汇编语言题目 要masm可以运行的 高分求解答

以下为已调试通过的源程序:.MODELSMALL.CODE.STARTUPMOVCX,8;8次循环计数MOVDL,0;记录值为3的四分之一节节的个数AGAIN:ROLAX,1;循环左移两次,将最高两位移到最低两位ROLAX,1XORAX,3;为了检测最低两位是否同时为1,用异或将最低两位取反TESTAX,3;测试最低两位JNZSKIP;若最低两位中有1,则跳过INCDL;否则,取反后的最低两位同时为0,即原来的最低两位(一个四分之一字节)为3,计数加1SKIP:XORAX,3;AX还原LOOPAGAIN;循环,共8次ADDDL,30H;将统计结果(小于等于8)转为ASCIIMOVAH,2;显示统计结果INT21H.EXITEND

用masm编写的汇编程序一运行,输入后就自动关闭什么问题 求大侠指导

你说的输入后自动关闭是什么意思?从你的程序来看,连续输入5个字符后退出,程序应该没问题。你是不是输入一个字符后按了回车键?所以没等到5个字符就退出了?如果是这样,那就是你理解错误。回车也算是输入的字符的。如果连续输入:12345程序退出;也可能是123退出

如何在MASM中生成.com文件?

用DEBUG可以直接写COM文件,MASM中可以通过tiny模式标识来生成COM文件(把最后生成的EXE文件改名为COM文件应该就可以了)。

在masm中怎样使用32位寄存器解决办法

movax,1234hmovbl,al;将al中的两组分开BL=34Handal,0fh;屏蔽高四位后送alAL=04Hmovcl,4;原al中的数据逻辑右移4次送blshrbl,cl;BL=03Hmovdl,ah;将ah中的两组分开DL=12Handdl,0f0h;屏蔽低四位后送dlDL=10Hmovcl,4;原ah中的数据逻辑右移4次送dlshrdl,cl;DL=01Hmovcl,ah;屏蔽高四位后送clCL=12Handcl,0fh;CL=02H.EXIT0END用-P命令试试-R命令显示全部寄存器和标志的内容,表示的是上一条指令执行的结果状态-R-R多用几次~

masm for windows软件怎么调试汇编程序

1、首先,下载安装masm for windows(过程已在另一篇经验说明,不在赘述),如图(我下载的版本较低,但是没关系,现在可以下到2012+的版本了,界面更加友好哦)2、点击保存,然后就可以调试汇编程序了~3、点击调试,出现DOS窗口,大概几秒钟的加载Debug时间,出现这个窗口就可以输入开始输入调试命令啦4、输入?可以查看debug的帮助5、r是查看寄存器的值等等,自己看看吧,最常用的是r,t等。

masm5.0debug中D命令显示的内容怎么看

你图上执行是正确的,装载后由于DS没有赋值,D命令显示的DS:0000并不是我们期望的01 02 03,而在你执行了g 10命令后,现在的DS:0000就是我们程序定义的内容了。

masm for windows 集成实验环境和masm5.0的区别

Masm for Windows 集成实验环境软件介绍Masm for Windows 集成实验环境是针对汇编语言初学者的特点开发的一个简单易用的汇编语言学习与实验软件,支持32位与64位的WINDOWS 7,支持DOS的16/32位汇编程序和Windows下的32汇编程序(并提供调试通过的35个WINDOWS汇编程序实例源代码),它具有错误信息自动定位、关键字实时帮助并且在帮助中动画演示汇编指令的执行过程、语法着色、无限次撤消与恢复、WORD式的查找、替换、定位、支持中文、长文件名等功能。masm5.0只是一个16位的dos下汇编编译工具。

请说明EDIT,MASM,LINK,DEBUG等在汇编语言源程序上机过程中的作用

(上机第一步)EDIT,是编辑程序,像一个文本编辑器,用来编辑汇编语言源程序,编辑好的程序扩展名为*.asm;(第二步)MASM,是汇编程序,用来把*.asm程序编译成二进制代码,该二进制代码文件称为目标程序,扩展名为*.obj;(第三步)LINK,是链接程序,用来把*.obj文件变成可执行目标代码,即可执行文件*.exe;在第二步和第三步中,可以发现程序语法上的错误;(第四步)DEBUG是调试工具,用于发现程序逻辑上的错误。

急求!!(masm)在以DATA为首地址的内存数据段中,存放20个16位带符号数,找出其中最大和最小数

ASSUME CS:CODE, DS:DATAS;-------------------------------------------DATAS SEGMENT MAX DW ? MIN DW ? DATA DW -45, +98, 49, 123, -239, 654;楼主在这里自己补齐 20 个数字吧;我写多了,百度知道就认为是垃圾,不予显示N EQU ($ - DATA) / 2 ;求出数据的个数DATAS ENDS ;-------------------------------------------CODE SEGMENTSTART: MOV AX, DATAS MOV DS, AX CALL SEACHEXIT: MOV AX, 4C00H INT 21H;---------------------------SEACH PROC MOV BX, 0 MOV CX, N DEC CX MOV AX, DATA[BX] MOV MAX, AX MOV MIN, AXLOOP1: INC BX INC BX MOV AX, DATA[BX] CMP AX, MAX JL NEXT MOV MAX, AXNEXT: CMP AX, MIN JG NEXT2 MOV MIN, AXNEXT2: LOOP LOOP1 RETSEACH ENDP;---------------------------CODE ENDS;------------------------------------------- END START

执行masm文件名的作用是?微机原理

其实可以直接在文本编辑器中编辑,然后另存为.ASM扩展名,利用MASM中断MASM.EXE和LINK.EXE就可以进行CMD调试查看程序运行了

用masm5.0编译汇编语言,为什么总是出现unable to open input

unable to open input file 这个错误,是汇编时找不到源文件。执行MASM汇编命令(或ML)时,需要指定你的.asm的源程序文件。这个文件,若在你执行命令的当前目录中,可以不加路径。若文件不在当前目录里,必须要加上源文件的路径。当然,若你打错了文件名,也会找不到文件,出现这个提示。==================对问题补充的回复:在DOSBOX中,只有mount过的盘符才存在。也就是说,你的DOSBOX里,只有C:盘,不存在D:盘。你指定D:..........这样的文件,是找不到的。如果在windows 里,你的源程序是 D:Myassembly taa.ASM,那么,在你的DOSBOX里,文件应当使用 C: taa.ASM来访问。

汇编时,使用MASM载入EXE文件,提示PROGRAM HAVE NO SYMBOL TABLE(程序缺少符号表),应该怎样处理?

在"开始"找到运行 单击在运行中输入 CMD输入CD空格(反斜杠),(进入C盘根目录)输入F:(进入F盘)输入CD空格MASM(进入MASM文件夹)输入MASM空格0817.ASM(检查0817.ASM有无错误并生成.OBJ文件),直到没错输入LINK空格0817.OBJ(进行连接)输入0817.EXE运行

用masm5.0编译汇编语言,实现两个字符串的比较,为什么我输入的字符会被覆盖几个?

因为你再输出提示消息的时候没有换行,所以覆盖了原来输入的内容简单修改就是显示输出提示消息的时候输出回车换行就可以了主要是:STR1 DB 0DH,0AH,"INPUT",0DH,0AH,"$"STR2 DB 0DH,0AH,"MATCH",0DH,0AH,"$"STR3 DB 0DH,0AH,"NO MATCH",0DH,0AH,"$"改过的完整代码如下:DATA SEGMENTSTR1 DB 0DH,0AH,"INPUT",0DH,0AH,"$"STR2 DB 0DH,0AH,"MATCH",0DH,0AH,"$"STR3 DB 0DH,0AH,"NO MATCH",0DH,0AH,"$"BUF1 DB 20,?,20 DUP(?)BUF2 DB 20,?,20 DUP(?)HH DB 0DH,0AH,"$"DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: MOV AX,DATA MOV DS,AX MOV AX,DATA MOV ES,AX LEA DX,STR1 MOV AH,09H INT 21H LEA DX,BUF1 MOV AH,0AH INT 21H LEA DX,STR1 MOV AH,09H INT 21H LEA DX,BUF2 MOV AH,0AH INT 21H MOV CL,BUF1+2 AND CX,0FH LEA SI,BUF1+2 LEA DI,BUF2+2AGAIN: CMPSB JNE NO LOOP AGAINYES: LEA DX,STR2 MOV AH,09H INT 21H JMP STOPNO: LEA DX,STR3 MOV AH,09H INT 21HSTOP: MOV AH,4CH INT 21HCODE ENDSEND START

masm 6.15怎么用?刚学汇编,求回答。

就你的操作,接下来几步应该可以帮你实现你需要的效果。1.启动你子创建的CMD窗体(即你重新命名为masm615的快捷方式)2.在启动后弹出的黑色DOS命令提示符下输入"masm 文件名.asm"(文件名为你创建的asm文件前缀名称,另外要注意的是如果你的asm文件编译时需要的其他资源文件需要和该文件存放在同一路径)3.当你执行完第2步后会有一个"文件名.obj“文件被创建,存放于你安装Masm 6.15的文件夹下4.继续在命令提示符下输入”link 文件名.obj“然后会提示信息,如果没有特殊需求可以点击回车键忽略5.第4步完成后会有一个”文件名.exe“文件被创建,存放于你安装Masm 6.15的文件夹下注: 如果你的asm文件没有错误,那么该exe文件可以直接运行,反之则可能根本就不会被创建;另外值得提醒的是有部分程序顺利执行完成后将直接退出(比如网上流传的”Hello word“程序),此时你可以右键点击该exe文件,在弹出的属性窗体上选择”程序“选项卡,可以找到一个”退出时关闭“的复选框,去掉前面的勾选。如上步骤本人完成了一次完整的操作,具体点的参数可到我空间看一篇名叫《汇编程序masm.exe及link.exe的参数》文章,祝君好运。

为什么我的masm软件不能生成exe文件?

还要用到link软件。masm只能生成obj文件。需要link将obj文件连接成可执行的exe文件。

masm中如何引用外部文件定义的东西

masm 可能在汇编的时候,默认符号前面是要加_ 或者__的。你试试extern _lpButnProc:DWORD或者extern __lpButnProc:DWORD

win7操作系统。用cmd运行不了masm,怎么解决啊?谢谢啦!

这个还需要现在安装MASM软件,目前的最新版本为6.11,里面有masm.exe和link.exe,安装好就可以用了将下载的压缩包里的程序解压(包含masm.exe和link.exe),放到一个目录中(如D:masm),然后就在这个目录下建立个文本文件(如XX.txt)写入个汇编程序,保存,将后缀名改为XX.asm。 然后进入命令提示行(开始--运行--输入cmd) ,进入程序所在文件夹(用dos的cd命令),以上面的为例,键入“d:”,回车,键入“cd masm”,回车,键入“masm XX”,回车3下,键入“link XX”,再回车3下,再键入“XX”,就运行完了。

汇编软件问题:在dosbox软件 环境下利用masm汇编,link时候无法打开asm

你遇到的这个问题,出错是因为找不到 helloworld.asm文件。找不到helloworld.asm文件的原因,不是路径映射问题,而是文件名问题。在DOSbox里,它只支持纯DOS的8.3短文件名。文件名最大长度不能超过8个字符。你的问题有两个解决办法:1. 将源文件改名。将helloworld.asm改成hello.asm(或其它名字,要求前面的名字长度小于或等于8个字符)。建议用这个办法。2. 在命令行里使用系统可认的短文件名。helloworld.asm在8.3文件系统中的名字是hellow~1.asm,你将命令改成 masm hellow~1.asm即可。(用DIR命令可查看短文件名)

masm,link,debug,debug2000,cv,td的入口参数

masm: Usage: masm /options source(.asm),[out(.obj)],[list(.lst)],[cref(.crf)][;] /a Alphabetize segments /b<number> Set I/O buffer size, 1-63 (in 1K blocks) /c Generate cross-reference /d Generate pass 1 listing /D<sym>[=<val>] Define symbol /e Emulate floating point instructions and IEEE format /I<path> Search directory for include files /l[a] Generate listing, a-list all /M{lxu} Preserve case of labels: l-All, x-Globals, u-Uppercase Globals /n Suppress symbol tables in listing /p Check for pure code /s Order segments sequentially /t Suppress messages for successful assembly /v Display extra source statistics /w{012} Set warning level: 0-None, 1-Serious, 2-Advisory /X List false conditionals /z Display source line for each error message /Zi Generate symbolic information for CodeView /Zd Generate line-number information =========================================================== link: Microsoft (R) Overlay Linker Version 3.60 Copyright (C) Microsoft Corp 1983-1987. All rights reserved. Valid options are: /BATCH /CODEVIEW /CPARMAXALLOC /DOSSEG /DSALLOCATE /EXEPACK /FARCALLTRANSLATION /HELP /HIGH /INFORMATION /LINENUMBERS /MAP /NODEFAULTLIBRARYSEARCH /NOFARCALLTRANSLATION /NOGROUPASSOCIATION /NOIGNORECASE /NOPACKCODE /OVERLAYINTERRUPT /PACKCODE /PAUSE /QUICKLIBRARY /SEGMENTS /STACK =========================================================== debug: Runs Debug, a program testing and editing tool. DEBUG [[drive:][path]filename [testfile-parameters]] [drive:][path]filename Specifies the file you want to test. testfile-parameters Specifies command-line information required by the file you want to test. After Debug starts, type ? to display a list of debugging commands.============================================================用下面的命令弄出来的,应该够了吧?masm/helplink/helpdebug/?

请教汇编高手:为什么书写这条指令:mov ax,a001H 使用masm编译时老是会报错? symbol not defined:a001H

a001H被看成一个变量名了,所以提示没有定义。在a001H前加0,编译器就认为是一个十六进制数。改成下面这句看看。mov ax,0a001H手头没有masm5.0编译器,没法检验,仅供参考。

masm调试窗口怎么变大

1、首先我们找到dosbox-0.74-3。2、然后在文件的目录里面找到DOSBox0.74-3options.bat。3、打开这文件修改参数1080x720即可。4、以上就是masm调试大窗口的方法。

masm的问题?

建议你按照以下步骤执行:【最好把MASM放在跟目录下例如D:MASM 把编辑好的ASM文件(用TXT文档编写程序,保存.把后缀名TXT改成ASM)放在MASM文件夹下如(D:MASM文件名.ASM) 点击开始菜单 .运行->CMD->D:回车->CD MASM回车->MASM 文件名3下回车 ->LINK 文件名 3下回车->DEBUG 文件名.EXE】zg.asm文件无法打开,无法链接成功

MASM 6.0的使用方法

MASM 6.x安装文件(链接下载文件MASM611FULL.ZIP)包含在5张软盘上,在DOS(或Windows的MS-DOS模拟环境)下,运行第一张盘上的SETUP.EXE程序就可以开始安装,通常选择在MS-DOS / Microsoft Windows操作系统下使用MASM。一个MASM汇编系统,主要包含如下内容:· MASM 6.15的汇编程序ML.EXE和配套的汇编错误信息文件ML.ERR,连接程序LINK.EXE,子程序库管理文件LIB.EXE;· CV目录下的CodeView调试程序CV.EXE以及配套的库文件;· HELP目录下的快速帮助文件QH.EXE,以及MASM宏汇编语言、汇编程序ML、连接程序LINK、调试程序CV等所有帮助文件;· 本书作者为方便操作建立的批处理文件、I/O子程序库等。书中例题程序文件也可以建立在某个子目录(例如HBYYLT)下。

运行masm文件怎么做?

进CMD然后键入MASM的地址然后进入MASM后键入MASM*****(文件名)然后键入LINK*****运行直接键入*****如果调试键入DEBUG*****用计事本写好的程序,后缀名要用.ASM并且要放到MASM的文件夹内.最好你把MASM放到C盘这样进入CMDCDC:>CDMASMC:MASM>MASM*****(程序正确就可以下一步了)C:MASM>LINK*****(这一步生成.EXE在MASM文件夹下)(运行可以进文件夹直接双击运行)C:MASM>DEBUG*****(调试)

MASM 6.0的软件简史

自二十世纪80年代初 Microsoft 公司推出 MASM 1.0 以来,MASM的版本不断升级,已升至6.15,支持MMX Pentium、Pentium II、Pentium III及Pentium 4指令系统。MASM 4.0支持80286/80287的处理器和协处理器;MASM 5.0支持80386/80387处理器和协处理器,并加进了简化段伪定义指令和存储模式伪指令,汇编和连接的速度更快。MASM 6.0是1991年推出的,支持80486处理器,它对MASM 进行重新组织,并提供了许多类似高级语言的新特点。MASM 6.0之后又有一些改进,微软又推出MASM 6.11,利用它的免费补丁程序可以升级到MASM 6.14,支持到Pentium III指令系统。

masm集成环境的使用方法

1、下载个masm5.0(简单,适合初学者),里面至少应包含masm.exe和link.exe,可能还包含其他的,不过我们只需要最基本的这两个。2、将masm5.0压缩包里的程序解压(包含masm.exe和link.exe),放到一个目录中(如D:masm),然后就在这个目录下建立个文本文件(如XX.txt)写入个汇编程序,保存,将后缀名改为XX.asm。3、进入命令提示行(开始--运行--输入cmd)4、进入程序所在文件夹(用dos的cd命令),以2中的为例,键入“d:”,回车,键入“cd masm”,回车,键入“masm XX”,回车3下,键入“link XX”,再回车3下,再键入“XX”,就运行完了。补充:1、若程序有问题,在4步骤中会提示,这时就要返回修改2、如果程序本身并不显示输出结果,则4步骤运行完后也不会看到什么反应,初学者建议找个有显示输出结果的程序做试验3、第二个步骤中,试验程序xx.asm应当和masm.exe link.exe放在一起,若不再一起,则需要添加masm环境变量。

汇编 masm 使用方法

最好把MASM放在跟目录下例如D:MASM把编辑好的ASM文件(用TXT文档编写程序,保存.把后缀名TXT改成ASM)放在MASM文件夹下如(D:MASM文件名.ASM)点击开始菜单 .运行->CMD->D:回车->CD MASM回车->MASM 文件名3下回车->LINK 文件名 3下回车->DEBUG 文件名.EXE

masm中3个简单程序

好这个问题问得好,我们刚好学了这个程序。#include"stdio.h"main(){ int a,b,c; a=(); b=(); c=b+a;scanf("%d,%d",a,b);(输入两个数字)printf("%d,%d",a,b);(将输出2个结果到显示器上)}其余的乘除你就照这个套就可以了。这个是最简单的。你加我的QQ我们一起学习吧718893026

按照MASM语法,“AH”是一个寄存器名,“0AH”表达十六进制数。()

【答案】:对解析:MASM汇编语言中,表示十六进制数的后缀字母是H,按照MASM语法,“AH”是一个8位寄存器,“0AH”表达十六进制数。

DOS环境下MASM提示is not recognized as an internal or external command,是环境变量没有配好吗

DOS环境下MASM提示is not recognized as an internal or external command,是设置错误造成的,解决方法如下:1、首先在电脑中找到dosbox软件并打开。2、然后记住masm软件路径。在dosbox里面输入 mount c d:dos,这一步是把 d:dos文件夹挂载为C盘。3、输入c:进入C盘。4、输入masm,进入masm目录。5、将2.asm文件放入与masm程序相同目录下,然后键入masm 2.asm,一直按回车,直到出现如下界面。6、最后输入2.asm运行程序,就完成了。

我在记事本里写了一个汇编程序,怎样能用masm编译?

你把文本文件打开,点“文件”--“另存为…”,单击时在弹出的对话框的命名框中输入文件名加扩展名,如:A.asm。然后在下面的文件类型框中选“所有类型”,最后点确定即可!此法简单易操作且不用设置系统,以免引起其他方面操作的麻烦!

masm的最新版本是什么?masm32和masm是一样的吗?Vista可以用吗?

MASM 和 MASM32 不是一样的,MASM是微软发布的的汇编开发软件包,最高版本是MASM6.15MASM32是国外汇编爱好者开发的一款汇编开发软件包,(她不是出自Microsoft)现在的最高版本是MASM32 V12.0

masm 如何从键盘读整数啊???

masm是一个汇编工具你问到是怎样编写一个从键盘读入数据的程序吗?-------------------------可以利用DOS系统调用AH=1,功能:键盘输入并回显示,入口参数:无,出口参数:AL=输入字符AH=7,功能:键盘输入(无回显),入口参数:无,出口参数:AL=输入字符AH=10,功能:键盘输入到缓冲区,入口参数:DS:DX=缓冲区首地址,(DS:DX)=最大字符数,出口参数:(DS:DX+1)=输入字符数,(DS:DX+2)=输入字符例:MOV AH,1INT 21H

汇编关于masm对源程序编译的问题:输入源程序路径,得不到目标文件,却是:unabletoopeninputfile,请指教

我也遇到过这种情况,因为是初学对masm不熟悉,你肯定是没有用cd命令。使用如下:假设你的masm程序在e盘(不论哪个文件夹),进入控制台(这个肯定会哈),先键入“e:”,回车;再用cd把masm所在的文件夹路径输入,例如“cd E:hb”,接下来就可以正常工作了。masm、link、debug神马的都正常运行喽!

masm怎么用?我写了一个程序,为什么输入程序名进去,回车几次就什么也没有了??

比如说你的文件名字叫a.asm。把这个文件放在你存masm的那个文件里。之后先在dos里进到你存程序的那个文件。然后 输入 masm a.asm然后就一直回车就行了。如果没有报错的话,下一步就该是连接了。输入 link a.obj然后也是一直按回车。之后就可以执行了。输入 a.exe。如果有输出则就又显示了。如果没输出,而只是在内存里的话,可以用debug命令查看。

MASM的静态数组如何定义

对8086而言,在数据段或附加数据段或在代码段中用db、dw、dd等伪指令定义的数组都是静态数组。如:arr1 db 100 dup(?)arr2 dw 200 dup(?)arr3 dd 300 dup(?)

汇编程序用masm和nasm和debug的区别?

debug是16位的调试工具,目前基本上没有用。而且它缺少宏等功能,写汇编语言基本上活受罪,现在除了学校里面学习,没人用了。nasm是跨平台的开源工具,功能相比MASM很薄弱。所以在Windows平台下面不太好用。Unix/Linux平台下面倒是很有些用户群了。MASM可以编写Windows程序,支持宏,一直随着Visual Studio的更新而更新,支持最新的64位操作系统,用起来也比较方便,但是学习资料很少(呵呵,你找的到最新的学习资料么?)。它主要用来对VC++写的程序进行局部调优。但一般也不用它!为什么?看后面!还有一个你没有说到的就是VC中的__asm { }指令,一般我们都用它来写汇编语言,进行VC的局部调优。你说的那三个东西,都是基于Intel语法的,还有一个gas汇编器,是AT&T语法的,那个东西是给经由gcc编译的C++语言代码进行汇编步骤的……根本不适合由人来书写它的代码。就这些,答完了。

怎么用命令提示符窗口打开MASM软件?

1.运行-->cmd;出现命令行提示符 2.执行 Edit 命令; 3.编辑源代码,保存为.asm,记住你保存文件的路径; 4.找到你的MASM的存储路径。并在Dos下进入该路径; 5.执行MASM 汇编你的源文件,产生.obj 文件 最终生成你的可执行文件

下载MASM

  1. MASM 6.11  汇编语言编程调试工具,非常好用  download.pchome.net/development/linetools/10660.html  2. MASM 5.0  MASM 5.0  download.pchome.net/development/linetools/9028.html  3. Windows版本的MASM--集成宏汇编 V2.0  Windows版本的MASM2.0--集成宏汇编软件.对界面进行了全  www.skycn.com/soft/14754.html  4. WenMASM V2.70 修正版  WenMASM 2.70是一款强大的基于WINDOWS平台的的集成宏汇  www.skycn.com/soft/20024.html  5. Masm for Windows 集成实验环境 5.0  MasmforWindows集成实验环境是从事一线教学的大学教师针对汇编语言初学者的特点开发的  www.onlinedown.net/soft/43311.htm  6. Masm for Windows 集成实验环境 V5.0  Masm for Windows 集成实验环境是从事一线教学的大学教  www.skycn.com/soft/24321.html  7. MasmED V1.0.2.9 汉化版(第二版)  MasmEd是由著名的Win32汇编编辑器RadASM的作者所编写的  www.skycn.com/soft/22747.html  8. WenMASM R1.0  WenMASM是一个强大的集成宏汇编软件!全中文界面能使你在汇编时显的更得?  download.21cn.com/list.php?id=46673  9. 汇编编译环境下载:masm 5.0  汇编编译环境下载之masm 5.0  dl.pconline.com.cn/html/6/9/dlid=989&dltypeid=6&pn=0&.html  10. MasmED v1.0.2.9 汉化版  www.ddooo.com/softdown/36552.htm  11. Windows版本的MASM--集成宏汇编 V1.02  www.ddooo.com/softdown/12912.htm  12. Windows版本的MASM--集成宏汇编 V2.0  www.ddooo.com/softdown/28375.htm  13. WenMASM V2.70 修正版  www.ddooo.com/softdown/30332.htm  14. Masm for Windows 集成实验环境 V5.0  www.ddooo.com/softdown/36215.htm  15. WenMASM V2.70 中文版  download.winzheng.com/softview/SoftView_32104.htm  16. WenMASM R2.57 中文版  download.winzheng.com/softview/SoftView_31647.htm  17. MasmED V1.0.2.9 汉化版  download.winzheng.com/softview/SoftView_30406.htm  18. MasmED V1.0.2.9 汉化版(第二版)  download.winzheng.com/SoftView/SoftView_22744.htm  19. WenMASM R2.57 破解补丁  download.winzheng.com/softview/SoftView_25757.htm  20. Masm for Windows 集成实验环境 V5.0  download.winzheng.com/softview/SoftView_24318.htm

MASM32与MASM6.11的区别?

masm是16位,masm32是32位的,你写的程序不可能在masm32下编译通过的.因为一个是编译dos程序的一个是编译windows 程序的.给你一个windows下的汇编程序吧!.386 .model flat,stdcall option casemap:none;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>; Include 文件定义;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>include windows.incinclude user32.incincludelib user32.libinclude kernel32.incincludelib kernel32.lib;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>; 数据段;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> .dataszCaption db "A MessageBox !",0szText db "Hello, World !",0;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>; 代码段;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> .codestart: invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK invoke ExitProcess,NULL;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> end start

masm 不是内部命令,是怎么回事

在dos的命令处理模块command.com或windows的模拟dos模块cmd.exe中并不包含masm这个命令,所以masm不是内部命令。masm命令需要外部独立的可执行文件masm.exe的支持。你的机器中(或这path路径中)没有这个文件,所以运行时出错。

如何使用MASM?

你这种情况是因为没有生成目标文件(.obj)造成的。应该是先用masm(编译)成目标文件,然后在用link(连接)成可执行文件(.exe) 比如,如果在C盘下有运行环境masm5.0和源文件5_3.asm,则应该如下顺序操作: Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp.C:Documents and SettingsAdministrator>cdC:>cd masm5.0C:MASM5.0>masm 此过程编译成目标文件 5_3.obj:Microsoft (R) Macro Assembler Version 5.00Copyright (C) Microsoft Corp 1981-1985, 1987. All rights reserved.Source filename [.ASM]: c:5_3Object filename [5_3.OBJ]: c:Source listing [NUL.LST]:Cross-reference [NUL.CRF]: 50670 + 415650 Bytes symbol space free 0 Warning Errors 0 Severe Errors 此过程连接成可执行文件 5_3.exeC:MASM5.0>linkMicrosoft (R) Overlay Linker Version 3.60Copyright (C) Microsoft Corp 1983-1987. All rights reserved.Object Modules [.OBJ]:c:5_3Run File [C:5_3.EXE]: c:List File [NUL.MAP]:Libraries [.LIB]:LINK : warning L4021: no stack segment 此过程debug跟踪调试:C:MASM5.0>debug c:5_3.exe-rAX=0000 BX=0000 CX=001C DX=0000 SP=0000 BP=0000 SI=0000 DI=0000DS=13D6 ES=13D6 SS=13E6 CS=13E6 IP=0000 NV UP EI PL NZ NA PO NC13E6:0000 8CC8 MOV AX,CS-tAX=13E6 BX=0000 CX=001C DX=0000 SP=0000 BP=0000 SI=0000 DI=0000DS=13D6 ES=13D6 SS=13E6 CS=13E6 IP=0002 NV UP EI PL NZ NA PO NC13E6:0002 8ED8 MOV DS,AX-tAX=13E6 BX=0000 CX=001C DX=0000 SP=0000 BP=0000 SI=0000 DI=0000DS=13E6 ES=13D6 SS=13E6 CS=13E6 IP=0004 NV UP EI PL NZ NA PO NC13E6:0004 B82000 MOV AX,0020-tAX=0020 BX=0000 CX=001C DX=0000 SP=0000 BP=0000 SI=0000 DI=0000DS=13E6 ES=13D6 SS=13E6 CS=13E6 IP=0007 NV UP EI PL NZ NA PO NC13E6:0007 8EC0 MOV ES,AX-tAX=0020 BX=0000 CX=001C DX=0000 SP=0000 BP=0000 SI=0000 DI=0000DS=13E6 ES=0020 SS=13E6 CS=13E6 IP=0009 NV UP EI PL NZ NA PO NC13E6:0009 BB0000 MOV BX,0000- ps:当然,因为源文件以及生成文件都在当前路径下,所以c:可以省略直接写文件名即可...如果你的源文件和你的运行环境不在同一个盘符下,那么在生成文件时命名的时候前面记得要加路径,不然就会像楼主那样提示找不到文件...

masm 为什么生成exe文件后,却不能进行debug调试?

你运行过了么?如果直接用调试不成功,又确实生成了.exe文件的话,你可以用cmd来进行调试:1. win+R组合键2. 输入cmd,回车3. 在弹出的黑窗口中先输入debug,后跟空格4. 找到生成的.exe文件,拖入上述黑窗体中(其实这个拖进去是把.exe文件的路径输进去,省得敲键盘输入了)。5. 回车现在可以调试了。

求MASM for Windows 注册码

晕学MASM还要注册?直接上www.aogosoft.com无论是dos汇编还是win32汇编资料多的是编译工具多的是

为什么我用masm5.0编译汇编源程序时总是出现 unable to open input file ?

我也遇到过这种情况,因为是初学对masm不熟悉,你肯定是没有用cd命令。使用如下:假设你的masm程序在e盘(不论哪个文件夹),进入控制台(这个肯定会哈),先键入“e:”,回车;再用cd把masm所在的文件夹路径输入,例如“cd E:hb”,接下来就可以正常工作了。masm、link、debug神马的都正常运行喽!

masm out of memory

MASM是微软公司开发的汇编开发环境,拥有可视化的开发界面,使开发人员不必再使用DOS环境进行汇编的开发,编译速度快,支持80x86汇编以及Win32Asm是Windows下开发汇编的利器。它与windows平台的磨合程度非常好,但是在其他平台上就有所限制,使用MASM的开人员必须在windows下进行开发。out of memory 内存不足将你的源程序中所有的中文标点符号改为英文标点符号即可。

MASM,TASM,ASM是什么

ASM:宏汇编。(Macroassembler)MASM:微软公司开发的宏汇编,很常用。TASM:Borland公司开发的宏汇编,也很常用,现在已经与MASM全面兼容。另外还有NASM:通用网际的宏汇编。适用于跨平台的软件开发。

如何使用masm编译软件?

Segmented Executable Linker,Incermental Linker首先MASM软件包并不包含资源编辑器,资源编辑器值是当做Windows SDK的一部分来发布的,或者要从Micsoft Visual Studio软件包Common目录中找到,更有甚者连接器Link竟然不是32位的,只能连接DOS程序...Incermental Linker只能在Visual C++目录中找到。其他一些有用工具也不在MASM的软件包里,所以要使用MASM进行Win32汇编编程需要对软件包进行改造,一方面要舍弃一些MASM软件包的LInk,另一方面,需要到其他地方去找资源编译器和32位链接器等工具软件。Win32编程用的一些链接库导入文件MASM软件包并没有,同样需要到VisualC++中去找,,MASM软件包没有自己的头文件,也不可能用c++的头文件,需要自己根据资料整理Visualc++的.h文件整理出来,然而Windows的数据结构和预定义的数据多的是处了明的。MASM会是Win32编程非常难以下手。

怎样安装和使用MASM6.11

MASM 6.11的安装与设置1. 打开MASM611SETUP文件夹,运行“Setup”。2. 在出现“Microsoft MASM 6.11 Setup”屏幕之后,按“ENTER”键。3. 在出现的“Microsoft MASM 6.11 Setup Main Menu”屏幕上,选中“Install the Microsoft Macro Assembler” ,按“ENTER”键。4. 在出现的“Microsoft MASM 6.11 Setup System Configuration”屏幕上,选中“MS-DOS/Microsoft WINDOWS”,按“ENTER”键。5. 在出现的“Microsoft MASM 6.11 Setup Microsoft Windows Files”屏幕上,对于“Install Files for Microsoft Windows?”,选中“Yes”,按“ENTER”键。6. 在出现的“Microsoft MASM 6.11 Setup Programmer"s WorkBench”屏幕上,对于“Install PWB?”,选中“Yes”,按“ENTER”键。7. 在出现的“Microsoft MASM 6.11 Setup BriefCompatibility”屏幕上,对于“Install Brief Compatibility?”,选中“No”,按“ENTER”键。8. 在出现的“Microsoft MASM 6.11 Setup Mouse Driver”屏幕上,对于“Copy the Microsoft Mouse Driver?”,选中“Yes”, 按“ENTER”键。9. 在出现的“Microsoft MASM 6.11 Setup MAS.EXE Utility” 屏幕上,对于“Install the MASM.EXE Utility?”,选中“Yes”, 按“ENTER”键。10. 在出现的“Microsoft MASM 6.11 Setup Help Files”屏幕上,对于“Copy the Help Files?”,选中“Yes”, 按“ENTER”键。11. 在出现的“Microsoft MASM 6.11 Setup SamplePrograms” 屏幕上,对于“Copy the Sample Programs?”,选中“Yes”, 按“ENTER”键。12. 在出现的“Microsoft MASM 6.11 Setup DestinationDrive” 屏幕上,对于 “Please Select the Destination Drive∶”中所列出的硬盘驱动器,可任选其一,此处选中“Hard Drive D”,按“ENTER”键。13. 在出现的“Microsoft MASM 6.11 Setup ExecutableFiles” 屏幕上,对于“D∶MASM611BIN”,不改变,按“ENTER”键。14. 在出现的“Microsoft MASM 6.11 Setup LibraryFiles” 屏幕上,对于“D∶ MASM611LIB”, 不改变,按“ENTER”键。15. 在出现的“Microsoft MASM 6.11 Setup IncludeFiles” 屏幕上,对于“D∶ MASM611INCLUDE”, 不改变,按“ENTER”键。16. 在出现的“Microsoft MASM 6.11 SetupInitialization Files” 屏幕上,对于“D∶MASM611INIT”,不改变,按“ENTER”键。17. 在出现的“Microsoft MASM 6.11 Setup Help Files” 屏幕上,对于“D∶MASM611HELP”,不改变,按“ENTER”键。18. 在出现的“Microsoft MASM 6.11 Setup Sample Files”屏幕上,对于“D∶MASM611SAMPLES”,不改变,按“ENTER”键。19. 此后,出现“Microsoft MASM 6.11 Setup Confirm YourChoices”屏幕,列出了前面各步所做出的各项选择的清单,供用户校核。如果发现有选择不当的项目,依然可以进行修改。修改的方法是:先用箭头键选中欲修改的项目,按“ENTER”键,然后再用箭头键选中“Yes”或“No”,最后再按“ENTER”键。如果校核无误,可以按“ENTER”键,以给出确认信息。20. 此后,出现“Microsoft MASM 6.11 Setup Installing”屏幕,安装程序进行拷贝文件的操作,此时仅需等待一会儿。21. 拷贝文件操作结束之后,出现“Microsoft MASM 6.11 SetupInstallation Complete”屏幕,按“CTRL+C”键,退出安装。

如何在64位操作系统上使用masm进行编译链接和运行

关于如何在64位操作系统上进行编译链接:首先,需要下载debug.exe,DOSbox,masm假如汇编源文件放在:D:DevelopASM_Programfirst_asm下,文件名为1.asm下载一个masm6.15,将MASM.EXE,LINK.EXE,ML.EXE三个文件复制到1.asm目录中,1.asm内容:(求2^3)assume cs:abcabc segmentmov ax,2add ax,axadd ax,axmov ax,4c00Hint 21Habc endsendwin+R,输入cmd进入命令行,输入C:UsersAdministrator>D:D:>cd DevelopASM_Programfirst_asm至此,进入了源程序所在目录,之后,输入:D:DevelopASM_Programfirst_asm>masm 1.asm会显示:Microsoft (R) MASM Compatibility DriverCopyright (C) Microsoft Corp 1993. All rights reserved.Invoking: ML.EXE /I. /Zm /c /Ta 1.asmMicrosoft (R) Macro Assembler Version 6.15.8803 Patched for you by promethee [ECL] in the year 2001 - enjoyCopyright (C) Microsoft Corp 1981-2000. All rights reserved.Assembling: 1.asmD:DevelopASM_Programfirst_asm>这样,程序就被编译好了,在1.asm文件夹下出现了一个1.obj的文件之后,再输入:link 1.obj之后回车会显示链接信息:Microsoft (R) Segmented Executable Linker Version 5.60.339 Dec 5 1994Copyright (C) Microsoft Corp 1984-1993. All rights reserved.Run File [1.exe]: //显示这个之后需要按下回车之后才出现下一行List File [nul.map]:Libraries [.lib]:Definitions File [nul.def]:LINK : warning L4021: no stack segmentLINK : warning L4038: program has no starting address这样,就生成了1.exe文件,即可执行文件但是由于操作系统是64位的,不能直接运行这个文件,所以,需要使用DOSbox进行运行我们先把下载下来的debug.exe也放到D:DevelopASM_Programfirst_asm下面打开DOSbox,输入:mount c d:DevelopASM_Programfirst_asm之后,输入c:然后输入debug 1.exe就使用debug打开了1.exe了可以输入r命令查看当前寄存器的状态其中,CX寄存器中记录了程序的大小输入t命令进行单步执行注意,执行到最后一句int 21时,要使用p命令执行。

运行masm文件怎么做?

进CMD 然后键入MASM的地址 然后进入MASM后键入MASM *****(文件名) 然后键入LINK ***** 运行直接键入 ***** 如果调试键入DEBUG ***** 用计事本写好的程序,后缀名要用.ASM 并且要放到MASM的文件夹内.最好你把MASM放到C盘 这样进入CMD CD C:>CD MASM C:MASM>MASM *****(程序正确就可以下一步了) C:MASM>LINK *****(这一步生成.EXE在MASM文件夹下) (运行可以进文件夹直接双击运行) C:MASM>DEBUG *****(调试)

masm不是内部或外部命令??

masm当然不是文件啊。他是一个文件夹而已。也不是程序或批处理文件。要生成那个obj之类文件,是通过那个文件夹里后缀名为:.dat那个文件的(通常会有两个,因为我没有装过你说的那个版本所以不知道具体叫什么名字);

DASM和Masm有什么区别

DASM是反汇编 MASM是汇编汇编语言是一种符号化的机器语言,它用助记号和符号地址代替了机器语言的二进制代码,增加了可读性、可用性、方便于人们编写在时间和空间上要求较高的优质程序。大家知道,计算机硬件只能识别和执行机器语言程序,担当转换翻译任务的程序就是汇编程序,经过汇编程序翻译出来的机器语言程序称为目标程序,把这种目标程序给计算机执行,即能获得计算结果。汇编程序在加工源程序时总是从头到尾地对源程序中的符号一个一个地阅读分析,这个动作叫做扫描,一般用两遍扫描来完成对源程序加工转换工作。第二遍扫描时,按所造出的表把每条原为符号化的机器语言代真(换码)成二进制数码形式的机器指令。这是汇编程序的主要加工过程,此外,汇编程序还具备一些附加的功能,例如,查错功能、修改功能、打印功能、执行伪指令功能等。反汇编程序也是一种语言转换程序,它的功能汇编程序相反,它能把机器语言程序转换为汇编语言程序。反汇编程序可以用来将二进制机器语言程序返回到汇编语言程序,来查阅目标码程序的正确性,它也可作为一种“破译”程序。

masm是什么 link是什么为什么不直接运行

MASM是X86汇编语言编译软件,Link是X86汇编语言连接软件。汇编语言要经过masm编译生成OBJ文件,之后用Link将OBJ连接生成最终的执行代码。

汇编语言编译工具masm怎么使用

你可以先在masm文件夹里建一个新的文件夹,名为nm然后将masm文件夹里的masm.exe和link.exe复制到新建的文件夹调用dos命令如果你的masm文件在d盘先用d:接着d;>cdmasmd;masmcdnmd;masm medit进入编辑界面写好程序后程序命名为123.asm退出d;masm mmasm123.asmd;masm mlink123.obj生成可执行文件d;masm m123.exe

什么是masm汇编工具包

MASM32是一个由个人开发的包含了不同版本工具组masm32书写记录建的汇编开发工具包。它的汇编编译器是MASM6.0以上版本中的Ml.exe,资源编译器是MicrosoftVisualStudio中的Rc.exe,32位链接器是MicrosoftVisualStudio中的Link.exe,同时包含有其他的一些如Lib.exe和DumpPe.exe等工具。该工具是由SteveHutchesson开发的。完整的MASM汇编系统包含很多文件,但最基本的有如下几个:ML.EXE汇编程序ML.ERR汇编错误信息文件DOSXNT.EXEMS-DOS扩展文件LINK.EXE连接文件LIB.EXE子程序库管理文件如果采用集成开发环境PWB,主要涉及如下文件:PWWB.EXE程序员工作平台NMAKER.EXE工程维护程序NMAKE.EXEnmaker的MS-DOS扩展驱动程序CV.EXE源代码调试器CodeViewCVPACK.EXE调试信息压缩器,它为CODEVIEW准备一个可执行文件HELPMAKE.EXE帮助文件维护程序BSCMAKE.EXE浏览数据库创建程序SBRPACK.EXE浏览信息程序PWBRMAKE.EXEBSCMAKE兼容驱动程序*.MXT各种PWB扩展工具文件*.XXT各种语言的PWB扩展文件

masm汇编程序在哪

在masm的文件夹下。把要编译的程序写在记事本里,把后缀改成asm,放在masm的文件夹下。然后打开dosbox输入命令进入masm。使用命令进入masm文件夹下。进入C其实就是masm目录。使用masmasm命令生成obj文件0警告0错误代表成功。文件夹下可以看到生成obj程序。obj链接生成exe文件然后就可以执行了。

MASM是干什么的

MASM是微软公司开发的汇编开发环境,拥有可视化的开发界面,使开发人员不必再使用DOS环境进行汇编的开发,编译速度快,支持80x86汇编以及Win32Asm是Windows下开发汇编的利器。它与windows平台的磨合程度非常好,但是在其他平台上就有所限制,使用MASM的开发人员必须在windows下进行开发。 MASM版本至今在不断的更新,推荐使用新版本进行开发。
 1 2  下一页  尾页