官术网_书友最值得收藏!

Microsoft Macro Assembler

As the name of this assembler states, it supports macros and has a nice set of built-in ones. However, it is hard to find a more or less valuable assembler without this feature today.

The first assembler I ever used was Macro Assembler (MASM) (I do not remember which version) on DOS installed on a Sony laptop with 4-MB RAM and a 100-MB hard disk (ah, good old times), and MS-DOS edit.exe was the only IDE. Needless to say, the compilation and linking was performed manually in the command line (as if DOS had any other interface).

In my opinion, this is the best way to learn Assembly or any other programming language--just a simple editor with as few features as possible (however, syntax highlighting is a great advantage, as it helps in avoiding typos) and a set of command-line tools. Modern integrated development environments (IDEs) are very complex, yet very powerful tools, and I am not trying to underestimate them; however, it is much better to use them once you understand what happens behind this complexity.

However, the intent behind this book is to learn the language the CPU speaks, not a specific Assembly dialect or specific assembler command-line options. Not to mention the fact that the currently available Microsoft Visual Studio 2017 Community (the easiest way to get MASM is to install Visual Studio 2017 Community--free and convenient) comes with several assembler binaries:

  • A 32-bit binary that produces 32-bit code
  • A 32-bit binary that produces 64-bit code
  • A 64-bit binary that produces 32-bit code
  • A 64-bit binary that produces 64-bit code

Our goal is to know how the CPU thinks rather than how to make it understand our thoughts and how we can find the location of libraries and executables installed on the system. Therefore, if MASM is your choice, it's good to use Visual Studio 2017 Community, as it will save you a lot of time.

主站蜘蛛池模板: 南川市| 浦东新区| 巴彦县| 衢州市| 保亭| 丰城市| 称多县| 巢湖市| 左贡县| 锡林郭勒盟| 嘉义县| 新田县| 中西区| 湖口县| 永德县| 深泽县| 东山县| 蓬莱市| 嘉峪关市| 黄骅市| 河北省| 宁南县| 八宿县| 青神县| 梁河县| 古蔺县| 岑溪市| 康平县| 仁怀市| 洛阳市| 新民市| 万宁市| 沐川县| 天门市| 绥滨县| 日土县| 日土县| 巢湖市| 柯坪县| 荥阳市| 平乡县|