cblock...endc é um recurso do MPASM muito utilizado para a geração de blocos de constantes (símbolos seqüenciais com nome). Portanto, não é mais necessário utilizar várias diretivas equ para que o assembler gerar uma lista de símbolos (com endereços contínuos).
O argumento dado a cblock é o endereço inicial do bloco. Este argumento pode ser omitido e, dessa maneira, o compilador estabelecerá como endereço inicial do próximo bloco o endereço imediatamente após o último byte do bloco anterior, conforme demonstrado no exemplo abaixo de um bloco iniciado no endereço 0x20h:
1 |
cblock 0x20 |
Além disso, pode-se utilizar a opção de incremento nos símbolos:
1 |
cblock ; endereço: um byte após o bloco anterior |
Neste caso, o assembler dedicaria 2 bytes para a variável.