自学Z/OS汇编语言

8
我曾经在一家进行大量主机工作的公司实习。我在主机方面的大部分经验都是使用Java和Unix System Services。我有一些ISPF界面和C语言的经验,但没有汇编语言的经验。
我即将毕业,最后一个学期我将进行独立研究。我想继续学习主机技术,想知道有哪些资源可以教我主机汇编语言。
需要注意的是,我没有为任何平台编写过汇编语言,但我了解二进制、十六进制,并且对寄存器有理论上的理解。
7个回答

10

以下内容均为参考资料,不是教程。但都会在实际使用中派上用场,因此了解这些信息很重要,特别是:

  • HLASM程序员指南
  • HLASM语言参考
  • HLASM常规信息
  • MVS程序管理:用户指南和参考
  • MVS汇编服务指南
  • MVS授权汇编服务指南
  • z/Architecture操作原理

您可以在IBM文档库中找到适合您所用的z/OS版本的书籍:

z/Architecture操作原理(“POP手册”)是系统圣经。该书中至关重要的是第7章,其中列出了指令和指令格式。

如果您需要教程材料,我可以推荐以下任意一本书(这些书都在我的书架上):

  • Bill Qualls的《大型机汇编程序设计》(此书配有模拟器PC/370,用于编译和运行汇编程序)
  • Kevin McQuillen和Anne Prince的《MVS汇编语言》

掌握了基础知识后:

  • Carmine A. Cannatello的《高级汇编语言和IBM系统与应用程序员界面》

如果您有问题,可以当然使用stackoverflow,但是如果需要更专业的大型机技术支持,请尝试http://ibmmainframeforum.com/。虽然该论坛活跃度不高,但版主们对这门技术非常熟悉。

祝您玩得愉快!


那几乎是我要发布的内容的复制。我每天几乎都要使用IBM汇编语言,随着时间的推移,它确实变得更容易了。我没有阅读过Qualls的书,但我有另外两本。Cannatello有点深奥; 你可能不需要里面的太多东西。在我看来,McQ和Price是可怕的,但这可能只是我特定的学习风格。 - user90784
1
Cannatello的书乍一看可能有些深奥,但实际上这本书中确实包含了一些有用的信息。我认为Cannatello书中关于动态分配的SVC99章节单独就值得购买。更不用说前四章非常入门且对初学者非常有用了。 - Robert Groves

5
学习汇编语言确实是了解计算机运作原理的好方法,但我建议直接学习390汇编语言将会有一个非常陡峭的学习曲线。我建议先使用微处理器模拟器,例如emu8086,它带有教程,从那里开始学习。你所学到的基本概念可以应用于其他更复杂的架构。

3

有一个名为Hercules的主机模拟器,可以免费(合法)获得一些较旧的主机操作系统。您可能会发现可以使用它来进行一些主机汇编实验。指令集不会比386系列更复杂,因此在此系统上学习汇编语言可能与其他任何系统一样好。

作为替代方案,这篇Stackoverflow文章讨论了其他学习汇编语言的方法。


MVS 3.8j是z/OS系列中最后一个合法可用的版本,与z/OS 1.10相比,它们之间的共同之处就像Windows 2008和CP/M一样少。但你关于先学习非主机汇编语言的观点部分正确 - 这会更容易,一旦完成,切换到主机汇编也只是短暂的步骤。 - paxdiablo

3

我曾经处于你的位置;我自己也是一名学生。我发现,尤其是在其他课程上,没有支持和没有人可以快速提供答案的情况下,试图自学大型机汇编语言,最好还是参加实际的课程。我编写过C ++,.NET,汇编语言,COBOL,高级汇编语言等代码,在两个汇编语言课程中真正帮助我的是处于有结构的环境中并获得了很多支持。


2

2

我通过以下资料和可以提问的同事自学了基础知识。为了轻松运行和调试基本汇编程序,我使用Z390仿真器,并选择使用辅助指令以及交互式调试测试选项。我将这个作为主要入门教程。我还参考了这个课程网站。最后,这些Share资料可能会有用,但由于不易于我的屏幕阅读器访问,我不知道它们是否很好。


-1
发布在一个古老的帖子上,但也许对某些人有用:IBM z系统服务器的汇编语言编程2.00由已故伟大的John Ehrman编写,是一个很好的资源。 此外,David Woolbright的网站上有很多有用的信息:http://csc.columbusstate.edu/woolbright/WOOLBRIG.htm

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接