Função Perl vec

Descrição

Esta função usa a string especificada EXPR como um vetor de inteiros sem sinal. O parâmetro NUMBITS é o número de bits reservados para cada entrada no vetor de bits.

Deve ser uma potência de dois de 1 a 32. Observe que o deslocamento é o marcador para o final do vetor e conta o número de bits especificado para encontrar o início. Os vetores podem ser manipulados com os operadores lógicos bit a bit |, & e ^.

Sintaxe

A seguir está a sintaxe simples para esta função -

vec EXPR, OFFSET, BITS

Valor de retorno

Esta função retorna o valor do campo de bit especificado por OFFSET.

Exemplo

A seguir está o código de exemplo que mostra seu uso básico -

#!/usr/bin/perl -w

$vec = '';
vec($vec,  3, 4) = 1;  # bits 0 to 3
vec($vec,  7, 4) = 10; # bits 4 to 7
vec($vec, 11, 4) = 3;  # bits 8 to 11
vec($vec, 15, 4) = 15; # bits 12 to 15
# As there are 4 bits per number this can
# be decoded by unpack() as a hex number
print("vec() Has a created a string of nybbles, in hex: ", unpack("h*", $vec), "\n");

Quando o código acima é executado, ele produz o seguinte resultado -

vec() Has a created a string of nybbles, in hex: 0001000a0003000f