Ir para o conteúdo

Código Natural/Notação posicional: mudanças entre as edições

(→‎Encode e decode Nh: simplificando vbit_to_baseh() e corrigindo)
Linha 363: Linha 363:


=== Encode e decode Nh ===
=== Encode e decode Nh ===
A seguir os algoritmos completos, expresso através de [[wikipedia:PL/pgSQL|linguagem PLpgSQL]]. Do inglês "''encode''" codifica em base Nh, e "''decode''" decodifica a base Nh. Na linguagem SQL a representação interna em [[cadeia de bits]] é denominada ''varbit'' (ou [https://www.postgresql.org/docs/current/datatype-bit.html ''bit varying'']), abreviada como ''vbit''.  
A seguir os algoritmos completos, expressos como funções [[wikipedia:PL/pgSQL|linguagem PLpgSQL]]"''encode''" codifica em base Nh, e "''decode''" decodifica a base Nh.  
 
No [[wikipedia:SQL:1992|padrão SQL:1992]] a representação interna em [[cadeia de bits]] foi denominada ''BIT VARYING'', sendo descontinuada em  [[wikipedia:SQL:2003|2003]]. No PostgreSQL, todavia, [https://www.postgresql.org/docs/current/datatype-bit.html o tipo de dado] e seus [https://www.postgresql.org/docs/current/functions-bitstring.html operadores e funções] foram mantidos, sendo abreviado como ''varbit'' — e nos nomes de função da biblioteca NatCod abreviada como ''vbit'').
 
O "encode" é a conversão "vbit to base-h", o "decode" é a conversão "base-h to vbit", daí os nomes de função <code>vbit_to_baseh()</code> e  <code>baseh_to_vbit()</code>, no contexto do [https://git.osm.codes/NaturalCodes/tree/main/src-sql SQL-schema NatCode].
O "encode" é a conversão "vbit to base-h", o "decode" é a conversão "base-h to vbit", daí os nomes de função <code>vbit_to_baseh()</code> e  <code>baseh_to_vbit()</code>, no contexto do [https://git.osm.codes/NaturalCodes/tree/main/src-sql SQL-schema NatCode].


2 402

edições