Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 不使用x86的经典汇编语言文本?_Assembly_6502_Vax - Fatal编程技术网

Assembly 不使用x86的经典汇编语言文本?

Assembly 不使用x86的经典汇编语言文本?,assembly,6502,vax,Assembly,6502,Vax,我正在寻找那些详细介绍汇编编程原理的文本,它们不使用x86作为目标体系结构。我最近没有找到任何类似的书,但我希望在20世纪70年代和80年代有一些好的书,当时整个应用程序仍然是用汇编编写的。所使用的架构也应该是更干净的设计之一,比如6502或VAX。这不是一本经典的书(最初出版于90年代),但我从Patterson和Hennessy的《计算机组织与设计:硬件/软件接口》(ISBN:0123706068)中学到了MIPS asm。这本书并不是严格地讲组装;这是一本计算机体系结构教科书。但是MIPS

我正在寻找那些详细介绍汇编编程原理的文本,它们不使用x86作为目标体系结构。我最近没有找到任何类似的书,但我希望在20世纪70年代和80年代有一些好的书,当时整个应用程序仍然是用汇编编写的。所使用的架构也应该是更干净的设计之一,比如6502或VAX。

这不是一本经典的书(最初出版于90年代),但我从Patterson和Hennessy的《计算机组织与设计:硬件/软件接口》(ISBN:0123706068)中学到了MIPS asm。这本书并不是严格地讲组装;这是一本计算机体系结构教科书。但是MIPS是一个相当干净的体系结构

虽然我想如果你想要一部经典,你可能是在寻找一些能深入作品的东西。

提供了或(一种假设的汇编语言)中的示例


计算机编程的艺术(当它完成时)将是相当彻底的

我认为20世纪70年代和80年代处理器的书籍市场很小,你只能找到制造商的文档,如果有的话

我敢肯定,大部分垃圾最终都被填埋了,但也可能有一部分被业余爱好者保存了下来

从摩托罗拉、MOS技术公司、数字设备公司等处寻找PDF格式的存档资料可能是值得的。

我用过。这是摩托罗拉68000的


我也在网上找到了这本免费的书。

我怀疑它是否还在印刷,但我在1977年开始的大学CS课程使用了西摩·克雷的建筑之一。(天哪!)实际上它是一种相当不错的汇编语言。它包括一个独特的功能,叫做micros,它有点像宏,但对于字符串欺骗更灵活,比如在大约三行源代码中通过
label999
创建符号
label1

实际上,在那个时候,整个应用程序都是用汇编编写的。我知道有一个文本编辑器是,操作系统的好部分当然是,但很少有应用程序

除此之外,我不记得有什么好的汇编语言书籍。但我的曝光是有限的,因为第二个CS类使用新的摩托罗拉6800,这是由一个特别的笔记集记录。在后来的几年中,我们在Unix v6上使用了C,但是没有编写汇编的要求,只有少数练习对阅读和理解PDP-11汇编语言非常有用,特别是对于内核阅读类,尽管98%的内核是用
C
编写的

在经历了所有这些之后,我了解了足够多的CPU和汇编程序,除了英特尔处理器之外,我几乎不需要制造商的处理器体系结构参考和汇编程序。一个巨大的挑战是DEC的RSX线程编译器输出语言,它完全由一系列汇编宏组成。但大多数处理器都易于理解和编程,包括德州仪器9900、摩托罗拉68000和68010、Z80、6502、VAX 750和TMS 16016/32032


无论是8086还是8047/8052系列,英特尔系列处理器都极难开发。高度非正交且带有奇怪模式:为什么
AX
BX
可以直接交换,而不是
DS
ES
?特别是在80386问世后,在保护模式下加载段寄存器会导致巨大的时钟周期损失。然后是奇怪的段控制伪指令、段类和代码定位器——链接后对目标代码的后处理。很多奇怪、笨拙的工具。

亚历山大·斯捷潘诺夫(Alexander Stepanov)在他的第一堂课中谈到了他向“结构化”汇编编程思想的转变。为了跟进这个想法,我搜索了一些书,书名是“Foo中的结构化汇编编程”。但事实证明,我所发现的是一些处理器架构的内容,而不是程序设计的原则。其他答案中提到的大多数书籍都与此一致

我看过Knuth的AoCP,它当然很详细,并且确实使用了MMIXAL。但是除了v中的一点点。第1章,第1.4节,是关于算法设计,而不是程序设计。所以它实际上属于一个类似Cormen等人的类别,“算法简介”


因此,可能根本就没有我想要的东西。

我也会根据我当时在assembler中编程的内容,研究6809和68000芯片组组件,以实现“更清洁的设计”

更进一步说,我发现IBM360/670汇编程序集非常容易编码。具体的文本-如果你想在注册管理等方面有一个很好的基础,那么就找一些旧的文本。我可能在某个书架上有一本,当我有机会的时候,我会在尘土飞扬的角落里找


不知道为什么,但我不喜欢旧的施乐PC中的Z80,出于某种原因,这是一种痛苦。

看看流行的微控制器,如该系列。这就是汇编程序编程仍然是一个热门话题的地方。有很多方法可以教你如何为这些设备编程,还有一些系统可以让你制作一些非常酷的小玩意


Atmel AVR微控制器和ARM处理器一样具有干净的体系结构。避免使用微芯片PIC设备,因为它们使用分页内存。你需要一个具有线性地址空间的微控制器。

TI msp430是一个非常好的体系结构,让我想起了我第一次看到它时的pdp11。至于书籍,我不知道我已经开始写了一本,但一直没有写完……可能不是你想要的那种;在线全文:

(1983年)

(1984年)


(1984)

克里斯·托伦斯(Chris Torrence)最近对罗伯特·瓦格纳(Robert Wagner)的著作进行了各种修改。这对我的起步有很大帮助<