LOW-VALUEとかZEROをヘキサで見たかったのですが、
DISPLAYでヘキサ表示が無理なのでファイルに書いてバイナリエディタで見ることに。
LOW-VALUEとSPACEとZEROの姿をこの目でみる
違うのは分かってるんですけど実際違うところ見たいじゃないですか。
結論
- LOW-VALUE:00
- SPACE:20
- '0':30
- ZERO:30
実験結果
環境
- Ubuntu 18.04.3 LTS
- cobc (OpenCOBOL) 1.1.0
ソースコード
IDENTIFICATION DIVISION. PROGRAM-ID. TEST_DATA. ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT F1 ASSIGN TO "F1.dat". DATA DIVISION. FILE SECTION. FD F1. 01 F1RC. * 文字 03 STR PIC X(4). * 符号なし数字4桁 03 NM PIC 9(4). * 符号つき数字4桁(3+符号) 03 NM_S4 PIC S9(4). * 符号つき数字4桁(バイナリ)2バイト 03 NM_4B PIC S9(4) COMP. * 符号つき数字9桁(バイナリ)4バイト 03 NM_9B PIC S9(9) COMP. * 符号つき数字3桁(パックデシマル)2バイト * 567 -> 56 7+ 03 NM_3C3 PIC S9(3) COMP-3. * 符号つき数字4桁(パックデシマル)3バイト * 5678 -> 05 67 8+ 03 NM_4C3 PIC S9(4) COMP-3. WORKING-STORAGE SECTION. PROCEDURE DIVISION. MAIN-S. * OPEN OUTPUT F1. * -- LOW-VALUE -- MOVE LOW-VALUE TO F1RC. MOVE 'LOWV' TO STR. WRITE F1RC. MOVE LOW-VALUE TO F1RC. WRITE F1RC. * -- SPACE -- MOVE LOW-VALUE TO F1RC. MOVE 'SPCE' TO STR. WRITE F1RC. MOVE SPACE TO F1RC. WRITE F1RC. * -- ALL'0' -- MOVE LOW-VALUE TO F1RC. MOVE 'ALL0' TO STR. WRITE F1RC. MOVE ALL'0' TO F1RC. WRITE F1RC. * -- ZERO -- MOVE LOW-VALUE TO F1RC. MOVE 'ZERO' TO STR. WRITE F1RC. MOVE ZERO TO F1RC. WRITE F1RC. * CLOSE F1. * STOP RUN. MAIN-E.
バイナリエディタで表示
実際の姿を目で見ました。
LOW-VALUEとはヘキサで00なんですね。
--
ここから広告