2011-01-19 40 views
4

在8086处理器中,我们使用的是不同的...我认为它们是16位的......但是我们在64位计算机上练习代码..怎么可能?请expalin >>>>什么是MaSm其实??你能解释我在哪里我可以得到的软件......什么是MASM?我们通常使用它来学习汇编语言代码?

+1

你的问题很难理解。至于MASM - 它是来自微软的汇编程序。见[WikiPedia](http://en.wikipedia.org/wiki/Microsoft_Macro_Assembler) – sinelaw 2011-01-19 08:21:18

回答

2

MASM是微软的宏汇编程序。 Microsoft Assembler自1981年以来一直在生产,并且由微软升级以适应操作系统需求和处理器发展。对于兼容性问题检查this

可以从here

2

MASM下载 - 为Microsoft宏汇编。它是一个汇编程序。它需要您的代码 预处理它并将其转换为二进制。将它链接到可运行的可执行文件或OBJect文件。

所有英特尔处理器32位和em64t处理器(80386及更高版本)均支持称为“实模式”的8086兼容模式。这意味着今天所有的个人电脑都可以向后兼容,比如MS-DOS和以前在IBM XT上运行的所有游戏。这些将在现代机器上运行,但速度非常快,所以这些将无法播放:-)

到今天为止,所有PC都以其实际模式下的处理器启动,现代操作系统将处理器切换到32位/ 64位“保护模式”。

基本上,实模式下发生的事情是CPU知道它正在工作为8086.例如:所有操作都在16位寄存器上,并且内存由一个段寻址:偏移量 对。内存地址是物理内存地址,您可以访问第一个1MB的RAM。物理地址是通过向左移动4位+偏移量来计算的。 因此,8000h:100h与8010h:0h地址相同,物理地址为80100h。

一些现代机器具有EFI而不是BIOS,并且从一开始就在“保护模式”下启动。 MAC机器就是这样。

0

MASM代表“microsoft macro assembler”。在现代(32位和64位)中,这是所谓的“实模式”,它支持16位甚至8位寄存器,以实现向后兼容。基本上,处理器“模拟”较旧的处理器,所以为该处理器设计的程序即使在较新的处理器上也能运行。对于MASM只要求谷歌。
我建议你在MASM中使用Easy Code。这是一个IDE,它允许您使用汇编语言构建win32可执行文件。

1

Ans。 MASM:Microsoft宏汇编程序 Microsoft宏汇编程序(MASM)是x86系列微处理器的汇编程序,最初生成Microsoft MS-DOS操作系统。它支持各种各样的宏设施和结构化编程习惯用法,包括用于循环,过程调用和交替的高级构造(因此,MASM是高级汇编程序的一个示例)。后来的版本增加了为MS​​-DOS发布的Windows操作系统生成程序的功能。 MASM是为数不多的Microsoft开发工具之一,没有单独的16位和32位版本。汇编程序提供程序员寻找额外的性能三基于性能的解决方案。 MASM可以构建非常小的高性能可执行文件,这些文件非常适合在大小和速度有关的情况。当其他语言需要额外的性能时,MASM可以通过小而快速且功能强大的动态链接库来提高这些语言的性能。对于在Microsoft Visual C/C++中工作的程序员,MASM会生成相同格式的模块和库,以便C/C++程序员可以在MASM中构建模块或库,并将它们直接链接到它们自己的C/C++程序中。这允许C/C++程序员以非常高效和方便的方式,图形操作,游戏,非常高速的数据处理和处理,以大多数程序员从未见过的速度解析,加密,压缩和任何其他形式的处理器密集型信息处理。