爲了好玩,我實現了將bf轉換爲例如bf的brainfuck編譯器。 x86彙編。目前我正在致力於大型機組裝。方言是「HLASM」,主機是IBM的一個370.在hlasm內輸出控制檯上的字符(370)
沙發大部分工作只發射一個字符到操作員的控制檯失敗:我只獲得空格,它看起來像一個隱式換行被添加我不想要)。
任何人都可以找到我的錯誤嗎?
* 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'!'
您確定要輸出到控制檯嗎?通常情況下,輸出寫入'SYSOUT'或'SYSPRINT'' DD'。你提到添加LF會讓我相信你對「終端」的控制檯感到困惑。 – cschneid
@cschneid是的你是對的,我的意思是用戶連接的終端 –
我建議寫'SYSOUT'' DD'。你需要爲'SYSOUT'編寫一個'DCB'宏,然後使用'OPEN'和'PUT'宏。請注意,I/O是面向記錄的,而不是面向流的,所以我認爲你必須緩衝你的輸出。 – cschneid