| Did you know ... | Search Documentation: |
| Pack logtalk -- logtalk-3.99.0/docs/apis/_sources/hash_common_32_0.rst.txt |
.. index:: single: hash_common_32 .. _hash_common_32/0:
.. rst-class:: right
object
hash_common_32Auxiliary predicates for the hashes library 32-bit algorithms.
| Availability:
| logtalk_load(hashes(loader))
| Author: Paulo Moura | Version: 1:0:0 | Date: 2026-04-04
| Compilation flags:
| static, context_switching_calls
| Uses: | :ref:`list <list/0>`
| Remarks: | (none)
| Inherited public predicates: | (none)
.. contents:: :local: :backlinks: top
.. index:: word32_hex/2 .. _hash_common_32/0::word32_hex/2:
word32_hex/2 ^^^^^^^^^^^^^^^^
Converts a 32-bit word into an 8-digit lowercase hexadecimal atom.
| Compilation flags:
| static
| Template:
| word32_hex(Word,Hex)
| Mode and number of proofs:
| word32_hex(+integer,-atom) - one
.. index:: bytes_hex/2 .. _hash_common_32/0::bytes_hex/2:
bytes_hex/2 ^^^^^^^^^^^^^^^
Converts a list of bytes into a lowercase hexadecimal atom.
| Compilation flags:
| static
| Template:
| bytes_hex(Bytes,Hex)
| Mode and number of proofs:
| bytes_hex(+list(integer),-atom) - one
.. index:: mask32/1 .. _hash_common_32/0::mask32/1:
mask32/1 ^^^^^^^^^^^^
Returns the 32-bit mask value.
| Compilation flags:
| static
| Template:
| mask32(Mask)
| Mode and number of proofs:
| mask32(-integer) - one
.. index:: add32/3 .. _hash_common_32/0::add32/3:
add32/3 ^^^^^^^^^^^
Adds two integers modulo 2^32.
| Compilation flags:
| static
| Template:
| add32(A,B,Sum)
| Mode and number of proofs:
| add32(+integer,+integer,-integer) - one
.. index:: add32/4 .. _hash_common_32/0::add32/4:
add32/4 ^^^^^^^^^^^
Adds three integers modulo 2^32.
| Compilation flags:
| static
| Template:
| add32(A,B,C,Sum)
| Mode and number of proofs:
| add32(+integer,+integer,+integer,-integer) - one
.. index:: add32/5 .. _hash_common_32/0::add32/5:
add32/5 ^^^^^^^^^^^
Adds four integers modulo 2^32.
| Compilation flags:
| static
| Template:
| add32(A,B,C,D,Sum)
| Mode and number of proofs:
| add32(+integer,+integer,+integer,+integer,-integer) - one
.. index:: mul32/3 .. _hash_common_32/0::mul32/3:
mul32/3 ^^^^^^^^^^^
Multiplies two integers modulo 2^32.
| Compilation flags:
| static
| Template:
| mul32(A,B,Product)
| Mode and number of proofs:
| mul32(+integer,+integer,-integer) - one
.. index:: rol32/3 .. _hash_common_32/0::rol32/3:
rol32/3 ^^^^^^^^^^^
Rotates a 32-bit word left by the given number of bits.
| Compilation flags:
| static
| Template:
| rol32(Value,Shift,Rotated)
| Mode and number of proofs:
| rol32(+integer,+integer,-integer) - one
.. index:: ror32/3 .. _hash_common_32/0::ror32/3:
ror32/3 ^^^^^^^^^^^
Rotates a 32-bit word right by the given number of bits.
| Compilation flags:
| static
| Template:
| ror32(Value,Shift,Rotated)
| Mode and number of proofs:
| ror32(+integer,+integer,-integer) - one
.. index:: little_endian_word32/2 .. _hash_common_32/0::little_endian_word32/2:
little_endian_word32/2 ^^^^^^^^^^^^^^^^^^^^^^^^^^
Decodes four bytes in little-endian order into a 32-bit word.
| Compilation flags:
| static
| Template:
| little_endian_word32(Bytes,Word)
| Mode and number of proofs:
| little_endian_word32(+list(integer),-integer) - one
.. index:: big_endian_word32/2 .. _hash_common_32/0::big_endian_word32/2:
big_endian_word32/2 ^^^^^^^^^^^^^^^^^^^^^^^
Decodes four bytes in big-endian order into a 32-bit word.
| Compilation flags:
| static
| Template:
| big_endian_word32(Bytes,Word)
| Mode and number of proofs:
| big_endian_word32(+list(integer),-integer) - one
.. index:: integer_to_little_endian_bytes32/2 .. _hash_common_32/0::integer_to_little_endian_bytes32/2:
integer_to_little_endian_bytes32/2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Encodes a 32-bit word into four bytes in little-endian order.
| Compilation flags:
| static
| Template:
| integer_to_little_endian_bytes32(Integer,Bytes)
| Mode and number of proofs:
| integer_to_little_endian_bytes32(+integer,-list(integer)) - one
.. index:: integer_to_big_endian_bytes32/2 .. _hash_common_32/0::integer_to_big_endian_bytes32/2:
integer_to_big_endian_bytes32/2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Encodes a 32-bit word into four bytes in big-endian order.
| Compilation flags:
| static
| Template:
| integer_to_big_endian_bytes32(Integer,Bytes)
| Mode and number of proofs:
| integer_to_big_endian_bytes32(+integer,-list(integer)) - one
.. index:: pad_md/4 .. _hash_common_32/0::pad_md/4:
pad_md/4 ^^^^^^^^^^^^
Pads a message using MD-style padding with a little-endian or big-endian length field.
| Compilation flags:
| static
| Template:
| pad_md(Endian,Bytes,LengthFieldBytes,PaddedBytes)
| Mode and number of proofs:
| pad_md(+little_big,+list(integer),+integer,-list(integer)) - one
(no local declarations; see entity ancestors if any)
(no local declarations; see entity ancestors if any)
(none)