O COBOL pode mostrar um valor hexadecimal?

Escrito por j.t. barett | Traduzido por josé fabián
  • Compartilhar
  • Tweetar
  • Compartilhar
  • Pin
  • E-mail
O COBOL pode mostrar um valor hexadecimal?
Os números hexadecimais mostram os conteúdos de memória de um computador (Comstock/Comstock/Getty Images)

COBOL, a linguagem comum orientada a empresas, foi a escolha principal dos programadores de software comercial desde as suas origens, em 1959. Embora o COBOL gerencie mais facilmente formatos de dados numéricos e de texto, é possível usá-lo, também, para mostrar valores hexadecimais, ou "hex", um formato em base 16 usado para representar todos os dados dentro de um computador. O formato é útil para depurar programas, pois pode ser útil para identificar os conteúdos exatos da memória do computador.

Outras pessoas estão lendo

Formato hexadecimal

Engenheiros da computação adotaram o sistema de numeração hexadecimal, ou de base 16, como uma forma conveniente de representar bits no computador. Em vez de escrever e mostrar bits individuais, um computador mostra dígitos hexadecimais, cada um dos quais representa 4 bits. Cada valor pode tomar 16 valores diferentes; como os números do 0 ao 9 são insuficientes para representá-los todos, são usadas as letras A a F. Você pode usar mais facilmente o número "A081" do que o equivalente binário "1010000010000001", por exemplo.

Literal hexadecimal

Em COBOL, como em outras linguagens, os valores literais são úteis para inicializar áreas de dados, reinicializar variáveis e realizar muitas outras tarefas de manutenção. Por exemplo, pode-se definir o cabeçalho de um relatório de um envio com o valor literal "FRETES JONES S.A.". Ocasionalmente, pode ser necessário estabelecer em uma variável, um número hexadecimal; para fazer isso, adicione o prefixo "X" ao valor, como nos seguintes exemplos:

05 HEX-CODE PIC X(01) VALUE X"2D".

ou

MOVE X"2D" TO HEX-CODE.

Note as aspas aos lados do valor hexadecimal. Ao usar esta técnica, você poderá ver o valor da variável em hexadecimal, mas somente no código fonte do programa.

Depurador

Para identificar a causa de uma falha no código, os programadores usam uma ferramenta de software chamada "depurador". O depurador permite ao programador observar exatamente como se comporta o programa e visualizar os conteúdos das variáveis em memória. Um bom depurador permitirá ver os conteúdos da memória em diferentes formatos, incluindo texto, números em base 10 e hexadecimais. Embora seja um pouco mais difícil de ler do que um número comum ou texto, um valor hexadecimal revela os dados exatos armazenados na memória. Ao observar como os dados são alterados enquanto o programa se executa, o programador poderá achar a causa de um problema.

Dump hexadecimal

Algumas versões do COBOL possuem uma característica que gera um listado chamado "hex dump", ou "dump hexadecimal", em caso de uma falha no programa. O "hex dump" é uma amostra hexadecimal de todas as variáveis na memória do programa, que também inclui um mapa da localização das variáveis na memória. Como isso funciona apenas em caso de uma finalização anormal do programa, e são exibidos os conteúdos da memória completa, você não poderá usar a técnica para mostrar apenas alguns valores durante uma execução normal do código.

Código adicionado

A maioria das versões do COBOL não possuem uma função interna que permita mostrar valores hexadecimais. Em vez disso, você deverá adicionar um código de programação que traduza os valores para hexadecimal e os mostre. Uma adição desse tipo ao programa incluirá uma variável definida como um array de bytes; na "Procedure Division" do programa, uma rotina analisará o array, byte por byte, e o traduzirá para uma tabla equivalente de caracteres de texto. Quando o programa exibir os caracteres, você os verá como valores hexadecimais. Por exemplo, o programa pode traduzir a cadeia de caracteres "ABC" para o equivalente "C1C2C3". Os primeiros dois caracteres, "C1", representam a letra "A" em hexadecimal.

Não perca

Filtro:
  • Geral
  • Artigos
  • Slides
  • Vídeos
Mostrar:
  • Mais relevantes
  • Mais lidos
  • Mais recentes

Nenhum artigo disponível

Nenhum slide disponível

Nenhum vídeo disponível