原创 大型機彙編(HLASM)之多進程指令CS 和 CDS
大型機彙編語言中的多進程處理是通過某些特殊指令來完成的,比如本文的CS(compare and swap)和CDS(compare double and swap),下面詳細介紹其功能。 在多進程環境中,比如在CICS環境下,
原创 大型機彙編(mainframe assembler/HLASM)之LOCTR
LOCTR--Multiple location counters 其主要作用就是爲了方便程序員編寫代碼,程序員可以把一個功能強大的程序分割成好多小的代碼段,然後在分別放在不同的PS/PDS dataset裏,而在每個dataset裏可以
原创 大型機彙編(mainframe assembler/HLASM)之LA指令
000104 5840 5060 00060 2988 L R4,DFHEICAP 000108 4140 4000 00000 2989
原创 大型機彙編(mainframe assembler/HLASM)之藏巧於拙
本文只說設計思想不談技術,其思想是一個老外架構師告訴我的,現在整理如下: 一般情況下,在嵌有CICS的彙編程序中,都多多少少涉及TWA(transaction work area)的概念,單從字面上就可以看出,這塊區域是在整個transa
原创 大型機彙編(mainframe assembler/HLASM)之DUMP解讀
PSW AT TIME OF ERROR 078D0000 00007F86 078D0000 00007F86是出錯時的PSW,一般情況下,我們在乎的有CC(18-19BIT), Program Mark(20-23BIT), Ad
原创 大型機彙編(HLASM)之隨時顯示所有寄存器裏的數值
L R6,4(R13) LA R6,16(R6) LA R7,12
原创 大型機彙編(mainframe assembler/HLASM)之CICS調用
一般情況下,寫一個嵌有CICS調用的HLASM程序,我們只要這樣寫就可以了:ABC CSECT ... EXEC CICS ... ... END 這樣彙
原创 大型機彙編(mainframe assembler/HLASM)之STCK/STCKE
插個題外話,爲什麼有些程序要用匯編寫,一般來說,主要有: 1)在運算速度上有要求。比如銀行,保險類的打印某些報表,這些報表在夜間batch運行階段,可能會被數億次地調用。 2)某些程序過於依賴於底層。比如有些從文件中讀取的數據,需要在內存
原创 大型機彙編(mainframe assembler/HLASM)之中斷向量表
Linkage Macro Function SVC 00 XDAP Reads or writes direct access volumes SVC 00 EXCP Executes a channe
原创 大型機彙編(mainframe assembler/HLASM)之代碼loop篇
從後往前檢測TMED中的每個bit是0還是1,並且根據結果從前往後給FLAGS賦值 LA R1,3 LA R5,TMED+2 LA R4,
原创 Reading LIST output(三)
The new compiler options used here are: MAP - provides a mapping of all data division items plus all implicitly declar
原创 COMP-1及COMP-2內部存儲解析
在從事大型機的工作中,很多時候我們所做的都是讀dump,然後反向找出VSAM/QSAM數據集中的不當記錄,尤其當數據集很大的時候,精確定位一條記錄很是不便。。。而這裏介紹的利用浮點數反向查找就是一個捷徑(比如:我們在dump裏看到X
原创 大型機彙編(mainframe assembler/HLASM)之COBOL解惑
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. ENVIRONMENT DIVISION. DATA D
原创 Reading LIST output(二)
The new compiler options used in this program are: LIST - produces 8 pieces of output - Assembler listing of program i
原创 大型機彙編(mainframe assembler/HLASM)之RECFM=VBA
本程序是檢測從JCL傳過來幾個參數,然後把各個參數打印出來,比如: //C EXEC PGM=*.B.SYSLMOD,PARM='BOBGUO,ABCDEFG' //SYSPRINT DD DSN=RAGJL.OUT