In today's world, Varicode has become a topic of great relevance and interest to a large part of the population. Whether due to its impact on society, its historical relevance or its influence in different areas, Varicode has captured the attention of experts, scholars and fans alike. In this article, we will explore in depth the different aspects related to Varicode, from its origin and evolution to its impact today. We will also analyze the opinions of experts and current trends surrounding Varicode, with the aim of providing a comprehensive view on this topic that is so relevant in the current context.
Varicode is a self-synchronizing code for use in PSK31. It supports all ASCII characters, but the characters used most frequently in English have shorter codes. The space between characters is indicated by a 00 sequence, an implementation of Fibonacci coding. Originally created for speeding up real-time keyboard-to-keyboard exchanges over low bandwidth links, Varicode is freely available.[1][2][3]
Limitations
- Varicode provides somewhat weaker compression in languages other than English that use same characters as in English.
Varicode table
Control characters
| Varicode |
Oct |
Dec |
Hex |
Abbr |
Description
|
| 1010101011 |
000 |
0 |
00 |
NUL |
Null character
|
| 1011011011 |
001 |
1 |
01 |
SOH |
Start of Header
|
| 1011101101 |
002 |
2 |
02 |
STX |
Start of Text
|
| 1101110111 |
003 |
3 |
03 |
ETX |
End of Text
|
| 1011101011 |
004 |
4 |
04 |
EOT |
End of Transmission
|
| 1101011111 |
005 |
5 |
05 |
ENQ |
Enquiry
|
| 1011101111 |
006 |
6 |
06 |
ACK |
Acknowledgment
|
| 1011111101 |
007 |
7 |
07 |
BEL |
Bell
|
| 1011111111 |
010 |
8 |
08 |
BS |
Backspace
|
| 11101111 |
011 |
9 |
09 |
HT |
Horizontal Tab
|
| 11101 |
012 |
10 |
0A |
LF |
Line feed
|
| 1101101111 |
013 |
11 |
0B |
VT |
Vertical Tab
|
| 1011011101 |
014 |
12 |
0C |
FF |
Form feed
|
| 11111 |
015 |
13 |
0D |
CR |
Carriage return
|
| 1101110101 |
016 |
14 |
0E |
SO |
Shift Out
|
| 1110101011 |
017 |
15 |
0F |
SI |
Shift In
|
| 1011110111 |
020 |
16 |
10 |
DLE |
Data Link Escape
|
| 1011110101 |
021 |
17 |
11 |
DC1 |
Device Control 1 (XON)
|
| 1110101101 |
022 |
18 |
12 |
DC2 |
Device Control 2
|
| 1110101111 |
023 |
19 |
13 |
DC3 |
Device Control 3 (XOFF)
|
| 1101011011 |
024 |
20 |
14 |
DC4 |
Device Control 4
|
| 1101101011 |
025 |
21 |
15 |
NAK |
Negative Acknowledgement
|
| 1101101101 |
026 |
22 |
16 |
SYN |
Synchronous Idle
|
| 1101010111 |
027 |
23 |
17 |
ETB |
End of Trans. Block
|
| 1101111011 |
030 |
24 |
18 |
CAN |
Cancel
|
| 1101111101 |
031 |
25 |
19 |
EM |
End of Medium
|
| 1110110111 |
032 |
26 |
1A |
SUB |
Substitute
|
| 1101010101 |
033 |
27 |
1B |
ESC |
Escape
|
| 1101011101 |
034 |
28 |
1C |
FS |
File Separator
|
| 1110111011 |
035 |
29 |
1D |
GS |
Group Separator
|
| 1011111011 |
036 |
30 |
1E |
RS |
Record Separator
|
| 1101111111 |
037 |
31 |
1F |
US |
Unit Separator
|
| 1110110101 |
177 |
127 |
7F |
DEL |
Delete
|
Printable characters
| Varicode |
Oct |
Dec |
Hex |
Glyph
|
| 1 |
040 |
32 |
20 |
SP
|
| 111111111 |
041 |
33 |
21 |
!
|
| 101011111 |
042 |
34 |
22 |
"
|
| 111110101 |
043 |
35 |
23 |
#
|
| 111011011 |
044 |
36 |
24 |
$
|
| 1011010101 |
045 |
37 |
25 |
%
|
| 1010111011 |
046 |
38 |
26 |
&
|
| 101111111 |
047 |
39 |
27 |
'
|
| 11111011 |
050 |
40 |
28 |
(
|
| 11110111 |
051 |
41 |
29 |
)
|
| 101101111 |
052 |
42 |
2A |
*
|
| 111011111 |
053 |
43 |
2B |
+
|
| 1110101 |
054 |
44 |
2C |
,
|
| 110101 |
055 |
45 |
2D |
-
|
| 1010111 |
056 |
46 |
2E |
.
|
| 110101111 |
057 |
47 |
2F |
/
|
| 10110111 |
060 |
48 |
30 |
0
|
| 10111101 |
061 |
49 |
31 |
1
|
| 11101101 |
062 |
50 |
32 |
2
|
| 11111111 |
063 |
51 |
33 |
3
|
| 101110111 |
064 |
52 |
34 |
4
|
| 101011011 |
065 |
53 |
35 |
5
|
| 101101011 |
066 |
54 |
36 |
6
|
| 110101101 |
067 |
55 |
37 |
7
|
| 110101011 |
070 |
56 |
38 |
8
|
| 110110111 |
071 |
57 |
39 |
9
|
| 11110101 |
072 |
58 |
3A |
:
|
| 110111101 |
073 |
59 |
3B |
;
|
| 111101101 |
074 |
60 |
3C |
<
|
| 1010101 |
075 |
61 |
3D |
=
|
| 111010111 |
076 |
62 |
3E |
>
|
| 1010101111 |
077 |
63 |
3F |
?
|
|
|
| Varicode |
Oct |
Dec |
Hex |
Glyph
|
| 1010111101 |
100 |
64 |
40 |
@
|
| 1111101 |
101 |
65 |
41 |
A
|
| 11101011 |
102 |
66 |
42 |
B
|
| 10101101 |
103 |
67 |
43 |
C
|
| 10110101 |
104 |
68 |
44 |
D
|
| 1110111 |
105 |
69 |
45 |
E
|
| 11011011 |
106 |
70 |
46 |
F
|
| 11111101 |
107 |
71 |
47 |
G
|
| 101010101 |
110 |
72 |
48 |
H
|
| 1111111 |
111 |
73 |
49 |
I
|
| 111111101 |
112 |
74 |
4A |
J
|
| 101111101 |
113 |
75 |
4B |
K
|
| 11010111 |
114 |
76 |
4C |
L
|
| 10111011 |
115 |
77 |
4D |
M
|
| 11011101 |
116 |
78 |
4E |
N
|
| 10101011 |
117 |
79 |
4F |
O
|
| 11010101 |
120 |
80 |
50 |
P
|
| 111011101 |
121 |
81 |
51 |
Q
|
| 10101111 |
122 |
82 |
52 |
R
|
| 1101111 |
123 |
83 |
53 |
S
|
| 1101101 |
124 |
84 |
54 |
T
|
| 101010111 |
125 |
85 |
55 |
U
|
| 110110101 |
126 |
86 |
56 |
V
|
| 101011101 |
127 |
87 |
57 |
W
|
| 101110101 |
130 |
88 |
58 |
X
|
| 101111011 |
131 |
89 |
59 |
Y
|
| 1010101101 |
132 |
90 |
5A |
Z
|
| 111110111 |
133 |
91 |
5B |
[
|
| 111101111 |
134 |
92 |
5C |
\
|
| 111111011 |
135 |
93 |
5D |
]
|
| 1010111111 |
136 |
94 |
5E |
^
|
| 101101101 |
137 |
95 |
5F |
_
|
|
|
| Varicode |
Oct |
Dec |
Hex |
Glyph
|
| 1011011111 |
140 |
96 |
60 |
'
|
| 1011 |
141 |
97 |
61 |
a
|
| 1011111 |
142 |
98 |
62 |
b
|
| 101111 |
143 |
99 |
63 |
c
|
| 101101 |
144 |
100 |
64 |
d
|
| 11 |
145 |
101 |
65 |
e
|
| 111101 |
146 |
102 |
66 |
f
|
| 1011011 |
147 |
103 |
67 |
g
|
| 101011 |
150 |
104 |
68 |
h
|
| 1101 |
151 |
105 |
69 |
i
|
| 111101011 |
152 |
106 |
6A |
j
|
| 10111111 |
153 |
107 |
6B |
k
|
| 11011 |
154 |
108 |
6C |
l
|
| 111011 |
155 |
109 |
6D |
m
|
| 1111 |
156 |
110 |
6E |
n
|
| 111 |
157 |
111 |
6F |
o
|
| 111111 |
160 |
112 |
70 |
p
|
| 110111111 |
161 |
113 |
71 |
q
|
| 10101 |
162 |
114 |
72 |
r
|
| 10111 |
163 |
115 |
73 |
s
|
| 101 |
164 |
116 |
74 |
t
|
| 110111 |
165 |
117 |
75 |
u
|
| 1111011 |
166 |
118 |
76 |
v
|
| 1101011 |
167 |
119 |
77 |
w
|
| 11011111 |
170 |
120 |
78 |
x
|
| 1011101 |
171 |
121 |
79 |
y
|
| 111010101 |
172 |
122 |
7A |
z
|
| 1010110111 |
173 |
123 |
7B |
{
|
| 110111011 |
174 |
124 |
7C |
|
|
| 1010110101 |
175 |
125 |
7D |
}
|
| 1011010111 |
176 |
126 |
7E |
~
|
|
Character lengths
Beginning with the single-bit code "1", valid varicode values may be formed by prefixing a "1" or "10" to a shorter code. Thus, the number of codes of length n is equal to the Fibonacci number Fn. Varicode uses the 88 values of lengths up to 9 bits, and 40 of the 55 codes of length 10.
As transmitted, the codes are two bits longer due to the trailing delimiter 00.
ASCII characters by varicode length
| Bits |
Codes |
Characters
|
| 1 |
1 |
SP
|
| 2 |
1 |
e
|
| 3 |
2 |
o t
|
| 4 |
3 |
a i n
|
| 5 |
5 |
LF CR l r s
|
| 6 |
8 |
- c d f h m p u
|
| 7 |
13 |
, . = A E I S T b g v w y
|
| 8 |
21 |
HT ( ) 0 1 2 3 : B C D F G L M N O P R k x
|
| 9 |
34 |
! " # $ ' * + / 4 5 6 7 8 9 ; < > H J K Q U V W X Y _ j q z |
|
| 10 |
40 |
NUL SOH STX ETX EOT ENQ ACK BEL BS VT FF SO SI DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EOM SUB ESC FS GS RS US % & ? @ Z ^ ` { } ~ DEL
|
References