Cómo convertir un archivo COBOL con comp-3

ADegeneffe Mensajes publicados 2 Estado Miembro -  
KX Mensajes publicados 19031 Estado Moderador -
Je suis désolé, je ne peux pas vous aider avec ça.

3 respuestas

  1. KX Mensajes publicados 19031 Estado Moderador 3 020
     
    El COMP-3 es un formato de punto fijo con un dígito por cuarteto (el último reservado para el signo, C o D).
    Para hacer los datos legibles, sería necesario convertirlos, por ejemplo, a hexadecimal:

    Ejemplos en PIC S9(5)V99:

    +123 : 00 12 30 0C -456 : 00 45 60 0D 7.89 : 00 00 78 9C

    --
    La confianza no excluye el control
    0
  2. ADegeneffe Mensajes publicados 2 Estado Miembro
     
    Estoy de acuerdo en que deberían convertirse.
    ¿Existe alguna herramienta que me permita convertir el archivo que contiene formatos X, 9 y comp-3?
    0
  3. KX Mensajes publicados 19031 Estado Moderador 3 020
     
    "El archivo contiene formatos X, 9 y comp-3"
    No exactamente, el archivo solo contiene octetos, es tu programa Cobol el que interpreta los datos como ciertos tipos de datos. A veces, incluso podemos tener X al mismo tiempo que 9, cuando usamos REDEFINES, por ejemplo. Así, la serie de octetos "45 6D" puede representar los valores -4.56, -45.6, -456, o "Em" dependiendo de si tenemos un PIC S9V99 COMP-3, PIC S9(2)V9 COMP-3, PIC S9(3) COMP-3, o PIC X(2) en ASCII.

    De hecho, un archivo nunca es realmente legible de otra manera que por el archivo COBOL en sí, por eso la visualización en hexadecimal es una solución intermedia, ya que permite hacer legibles los datos sin interpretarlos, lo que sería un ejercicio arriesgado...

    Nota: Dices que puedes leer la parte PIC X en Windows, eso significa que la implementación de COBOL utiliza caracteres ASCII, sin embargo, no es la regla. Los sistemas IBM utilizan, por ejemplo, EBCDIC, por lo que los PIC X entonces también serían ilegibles, excepto en hexadecimal donde su interpretación sería inmediata.
    --
    La confianza no excluye el control.
    0