为了好玩,我正在实施将bf翻译成例如: x86程序集。目前我正在研究大型机组装。方言是“HLASM”,大型机是IBM的370之一。
Sofar大部分工作只会向操作员的控制台发出一个字符失败:我只获得空格,看起来像是一个隐含的换行符(我不想要)。
有人能找到我的错吗?
* get a character to display
LLGC R6,0(R7)
* get a pointer to the buffer which will contain the char to displa
LA R5,BUFFER
* store character in buffer
STC R6,0(R5)
* get a pointer to the memory area describing the data to display
LA R1,MSGAREA
* invoke display char
SVC 35
MSGAREA EQU *
DC AL2(5)
DC XL2'00'
BUFFER DC C'!'
答案 0 :(得分:2)
我建议您写一下SYSOUT
DD
,以便您可以灵活地批量运行(在SYSOUT
中分配JCL
)或以交互方式运行(分配{{ 1}}到我认为是SYSOUT
中的默认值的终端会话。)
TSO
如果您可以将程序绑定到TSO专用,那么您可能还需要查看终端I / O的TPUT, TGET, and TPG macros。如果您习惯于在Unix中使用流式I / O,则终端I / O在3270环境中有点奇怪。
[entry logic, initialization and so forth]
OPEN (SYSOUT,OUTPUT)
PUT SYSOUT,RECORD
CLOSE SYSOUT
[exit logic]
RECORD DC CL80' '
SYSOUT DCB DDNAME=SYSOUT, X
DSORG=PS, X
MACRF=PM, X
RECFM=FB, X
LRECL=80
已记录在案here。记录DCB
OPEN
。记录PUT
CLOSE
。 out.l.s
已记录here。