BINPUTW
Synopsis
Store 32-bit words into a binary data container
Stack Diagram
Input Stack | Output Stack | ||||
---|---|---|---|---|---|
Ddest | Numoffset | Numsrc | Numwords | → | Ddest-upd |
Ddest | Numoffset | Ssrc | Numwords | → | Ddest-upd |
Ddest | Numoffset | Lsrc | Numwords | → | Ddest-upd |
Level 4 | Level 3 | Level 2 | Level 1 | → | Level 1 |
Description
The BINPUTW
command stores a specified number of 32-bit words into a binary data container, starting from an offset position; it's not possible to write data exceeding the container's size.
The source of data can be:
- a scalar: the number is converted to an unsigned binary integer and divided into 32-bit words which are stored in the container, in little endian word order;
- a string: the string is converted to a stream of UTF8 codepoints whose lower 32 bits are stored into the container;
- a list of scalars: each number is converted to an unsigned binary integer and its lower 32 bits are written in the container.
If the size of the source data is less than the specified number of words remaining words will be set to #0h
.
Compatibility
BINPUTW
is specific to newRPL and has no direct equivalent in userRPL.
Usage
Input
4: BINDATA 2 AAAAAAAAAAAA 3: 0 2: #1122334455667788h 1: 2 ………………………………………………………………………………………………………… BINPUTW
Output
4: 3: 2: 1: BINDATA 2 VWZ3iYESIzR4 …………………………………………………………………………………………………………
Related Commands
Command | Short Description | |
---|---|---|
MKBINDATA | Create binary data container object | NEW |
BINPUTB | Store bytes into binary data object | NEW |
BINGETB | Extract binary data as list of bytes | NEW |
BINPUTW | Store 32-bit words into binary data object | NEW |
BINGETW | Extract data from a binary data object as a list of 32-bit words | NEW |
BINPUTOBJ | Store an entire object into a binary data container | NEW |
BINGETOBJ | Extract an entire object from a binary data container | NEW |
BINMOVB | Copy binary data block into a binary data object | NEW |
BINMOVW | Copy 32-bit words between binary data objects | NEW |