6 bits, 12 bytes
Jump to navigation
Jump to search
6 bits, 12 bytes is the fifth ___ bits ___ bytes language and the first one to not be a joke, created by Europe2048.
Designed by | User:Europe2048 |
---|---|
Appeared in | 2024 |
Memory system | Stack-based |
Dimensions | one-dimensional |
Computational class | Bounded-storage machine |
Reference implementation | Unimplemented |
Influenced by | the four other __ bits, __ bytes |
Influenced | 0 Bits, 0 Bytes |
File extension(s) | .6btb |
Characters
Here is the standard character map used for outputting, one character per byte:
. 0123456789ABCDEF 0 □αβγδεζηθικλμνξπ 1 ρστυφχψωΔΘΛΞΠΦΨΩ 2 !"#$%&'()*+,-./ 3 0123456789:;<=>? 4 @ABCDEFGHIJKLMNO 5 PQRSTUVWXYZ[\]^_ 6 `abcdefghijklmno 7 pqrstuvwxyz{|}~⌂ 8 €ΣςΓƒ…†‡ˆ‰Š‹Œ♦Ž♠ 9 ≠≤≥☺♥•–—˜™š›œ♣žŸ A █¡¢£¤¥¦§¨©ª«¬▄®¯ B °±²³´▀¶·¸¹º»¼½¾¿ C ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏ D ÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞß E àáâãäåæçèéêëìíîï F ðñòóôõö÷øùúûüýþÿ
Commands
"top value of the stack" is shortened to "top value". Do A on B means to pop B, and push operation A applied to B.
Talk before you change! (if you aren't the owner)
Byte | Name | Shortened | Action |
---|---|---|---|
00 | null | * |
Does absolutely nothing. |
01 | duplicate | . |
Duplicates the top value. |
02 | over | , |
Duplicates the second-to-top value. |
03 | flip | : |
Flips the top two values. |
04 | flip all | ↕ |
Flips the entire stack. |
05 | pop | ◌ |
Pops the top value. |
06 | add | + |
Adds the top two values. |
07 | subtract | - |
Subtracts the top two values. |
08 | multiply | × |
Multiplies the top two values. |
09 | divide | ÷ |
Divides the top two values. |
0a | power | ⁿ |
I think you get the pattern. |
0b | modulus | ◿ |
Takes the remainder when divided. |
0c | floor | ⌊ |
Rounds towards 0. |
0d | sine | ∿ |
|
0e | number | # |
Prints the top value as a number. |
0f | → |
Prints the top value as a character (modulo 256). Printing a bell character will play a sound. | |
10 | zero | 0 |
Pushes 0. |
11 | one | 1 |
Pushes 1. |
12 | two | 2 |
Pushes 2. |
13 | three | 3 |
Pushes 3. |
14 | four | 4 |
Pushes 4. |
15 | five | 5 |
Pushes 5. |
16 | six | 6 |
Pushes 6. |
17 | seven | 7 |
Pushes 7. |
18 | eight | 8 |
Pushes 8. |
19 | nine | 9 |
Pushes 9. |
1a | push | ↑ |
Pushes a number on to the stack. |
1b | pi | π |
Pushes pi. |
1c | euler | e |
Pushes Euler's number. |
1d | byte | • |
Pushes 256. |
1e | round | [ |
Rounds as usual. |
1f | ceiling | ⌈ |
Rounds away from 0. |
20 | jump | ↷ |
Jumps to the corresponding instruction. |
21 | start loop | ( |
Jumps to the corresponding ) if the top value is ≤0. |
22 | end loop | ) |
Goes back to the corresponding ( if the top value is >0. |
23 | input | ↓ |
Input a number and push it to the stack. |
24 | increment | i |
Increases the top value by 1. |
25 | decrement | d |
Decreases the top value by 1. |
26 | square | s |
Squares the top value. |
27 | negative | ` |
Negates the top value. |
28 | short | σ |
Pushes 65536. |
29 | int | λ |
Pushes 2147483648. |
2a | long | Λ |
Pushes 9223372036854775808. |
2b | double | Δ |
Pushes 1.797693134862316e+308. |
2c | reciprocal | / |
Divide 1 by the top value. |
2d | logarithm | ₙ |
Take log base a of b. |
2e | nan | N |
Pushes NaN. |
2f | infinity | ∞ |
Pushes infinity (float). |
30 | if | c |
If the top value of the stack is a specified number, run the code. |
31 | else | C |
Otherwise, do this. |
32 | end conditional | x |
End the code in the else block. |
33 | ? | ? |
? |
34 | ? | ? |
? |
35 | unary | ¹ |
Output the top value in unary. |
36 | newline | ↲ |
Insert a newline. |
37 | ? | ? |
? |
38 | ? | ? |
? |
39 | ? | ? |
? |
3a | ? | ? |
? |
3b | random | ⚂ |
Pushes a random number between 0 and 1. |
3c | un | ° |
When put before a command, inverses it. |
3d | cycle | ↻ |
Toggles cycle mode: the program goes back to the first command after finishing the last. Cycle mode is off by default. |
3e | clear | □ |
Pops everything. |
3f | end | ■ |
Ends the program. |
Order
When using a command like subtract -
, the top value is the first argument. So,
25-# **** **** ****
outputs 3, but
52-# **** **** ****
outputs -3.
Numbers
Numbers are represented in six bits, using the standard binary representation.
Number | Byte | Number | Byte | Number | Byte | Number | Byte |
---|---|---|---|---|---|---|---|
0 | 00 | 16 | 10 | 32 | 20 | 48 | 30 |
1 | 01 | 17 | 11 | 33 | 21 | 49 | 31 |
2 | 02 | 18 | 12 | 34 | 22 | 50 | 32 |
3 | 03 | 19 | 13 | 35 | 23 | 51 | 33 |
4 | 04 | 20 | 14 | 36 | 24 | 52 | 34 |
5 | 05 | 21 | 15 | 37 | 25 | 53 | 35 |
6 | 06 | 22 | 16 | 38 | 26 | 54 | 36 |
7 | 07 | 23 | 17 | 39 | 27 | 55 | 37 |
8 | 08 | 24 | 18 | 40 | 28 | 56 | 38 |
9 | 09 | 25 | 19 | 41 | 29 | 57 | 39 |
10 | 0a | 26 | 1a | 42 | 2a | 58 | 3a |
11 | 0b | 27 | 1b | 43 | 2b | 59 | 3b |
12 | 0c | 28 | 1c | 44 | 2c | 60 | 3c |
13 | 0d | 29 | 1d | 45 | 2d | 61 | 3d |
14 | 0e | 30 | 1e | 46 | 2e | 62 | 3e |
15 | 0f | 31 | 1f | 47 | 2f | 63 | 3f |
There are no other types.
Examples
Does nothing
Normal: □□□□□□□□□□□□ Unshackled: **** **** **** **** Bytes: 00 00 00 00 00 00 00 00 00 00 00 00
Print "hi" in lowercase
Normal: kDˆ<CÀ□□□□□□ Unshackled: ↑C2× →i→* **** **** Bytes: 6b 44 88 3d 43 c0 00 00 00 00 00 00
Truth-machine
Normal: ♠□ρ?ΠαFυÒ□□□ Unshackled: ↓c*0 →Cc. 1(→) **** Bytes: 8f 00 10 3f 1c 01 46 13 d2 00 00 00