TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Уравновешенная троичная система счисления - форум переехал с http://ternary.info

Moderator: haqreu

User avatar
poststatist
Novelist
Posts: 25
Joined: 01 Jun 2020 07:52
Location: Новосибирск

TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by poststatist »

Предлагаю троичный формат кодирования символов TernaryUniversalCode-9.

Code: Select all

╔═══════════════════════════════════════════════════════════════╗
║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░║
║░░░░░░▓▓▓▓▓▓▓▓▓░░▓▓▓░░░▓▓▓░░▓▓▓▓▓▓▓▓▓░░░░░░░░░░░▓▓▓▓▓▓▓▓▓░░░░░░║
║░░░░░░░░░▓▓▓░░░░░▓▓▓░░░▓▓▓░░▓▓▓░░░░░░░░░░░░░░░░░▓▓▓░░░▓▓▓░░░░░░║
║░░░░░░░░░▓▓▓░░░░░▓▓▓░░░▓▓▓░░▓▓▓░░░░░░░░░▓▓▓▓▓▓░░▓▓▓░░░▓▓▓░░░░░░║
║░░░░░░░░░▓▓▓░░░░░▓▓▓░░░▓▓▓░░▓▓▓░░░░░░░░░░░░░░░░░▓▓▓▓▓▓▓▓▓░░░░░░║
║░░░░░░░░░▓▓▓░░░░░▓▓▓░░░▓▓▓░░▓▓▓░░░░░░░░░░░░░░░░░░░░░░░▓▓▓░░░░░░║
║░░░░░░░░░▓▓▓░░░░░▓▓▓▓▓▓▓▓▓░░▓▓▓▓▓▓▓▓▓░░░░░░░░░░░▓▓▓▓▓▓▓▓▓░░░░░░║
║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░║
╚═══════════════════════════════════════════════════════════════╝

 Hello world!
[ OOOOPONOO OOOOPPNPN OOOOPPOOO OOOOPPOOO OOOOPPOPO OOOOOPPNN OOOOPPPPO OOOOPPOPO OOOOPPPNO OOOOPPOOO OOOOPPNOP OOOOOPPNO ]

TUC-9 использует не менее 9 тритов (т.е. один трайт). Если старший трит равен P активируется "мультитрайтный" режим кодирования и символ кодируется уже не одним, а двумя или даже тремя трайтами, но не более. При этом N означает конец "мультитрайтного" режима, а O указывает на его отсутствие. Остальные 8(16/24) тритов непосредственно кодируют символ.
Таким образом, TUC-9 позволяет кодировать от 6561 до 282429536481 символов в зависимости от предъявляемых требований. Такое количество символов превышает диапазон UTF-8 в 1000 раз.

ОБНОВЛЕНО 02.07.20

СТАТУС: поддержка 365 символов, в том латиницы (A-Z, a-z), кириллицы (А-Я, а-я), десятичных цифр (0-9), символы (ASCII), псевдографики (░▒▓█ и т.д.) и управляющих символов (NUL, BS, TAB etc.), написана реализация на JS (мультитрайтный режим не был реализован по причине отсутствия в настоящее время символов, которые бы им кодировались.

 Список кодов TUC-9
0. [ OOO OOO OOO ] === NUL
1. [ OOO OOO OOP ] === SOH
2. [ OOO OOO OPN ] === STX
3. [ OOO OOO OPO ] === ETX
4. [ OOO OOO OPP ] === EOT
5. [ OOO OOO PNN ] === ENQ
6. [ OOO OOO PNO ] === ACK
7. [ OOO OOO PNP ] === BEL
8. [ OOO OOO PON ] === BS
9. [ OOO OOO POO ] === TAB
10. [ OOO OOO POP ] === LF
11. [ OOO OOO PPN ] === VT
12. [ OOO OOO PPO ] === FF
13. [ OOO OOO PPP ] === CR
14. [ OOO OOP NNN ] === SO
15. [ OOO OOP NNO ] === SI
16. [ OOO OOP NNP ] === DLE
17. [ OOO OOP NON ] === DC1
18. [ OOO OOP NOO ] === DC2
19. [ OOO OOP NOP ] === DC3
20. [ OOO OOP NPN ] === DC4
21. [ OOO OOP NPO ] === NAK
22. [ OOO OOP NPP ] === SYN
23. [ OOO OOP ONN ] === ETB
24. [ OOO OOP ONO ] === CAN
25. [ OOO OOP ONP ] === EM
26. [ OOO OOP OON ] === SUB
27. [ OOO OOP OOO ] === ESC
28. [ OOO OOP OOP ] === FS
29. [ OOO OOP OPN ] === GS
30. [ OOO OOP OPO ] === RS
31. [ OOO OOP OPP ] === US
32. [ OOO OOP PNN ] === SPC
33. [ OOOOOPPNO ] === [ ! ]
34. [ OOOOOPPNP ] === [ " ]
35. [ OOOOOPPON ] === [ # ]
36. [ OOOOOPPOO ] === [ $ ]
37. [ OOOOOPPOP ] === [ % ]
38. [ OOOOOPPPN ] === [ & ]
39. [ OOOOOPPPO ] === [ ' ]
40. [ OOOOOPPPP ] === [ ( ]
41. [ OOOOPNNNN ] === [ ) ]
42. [ OOOOPNNNO ] === [ * ]
43. [ OOOOPNNNP ] === [ + ]
44. [ OOOOPNNON ] === [ , ]
45. [ OOOOPNNOO ] === [ - ]
46. [ OOOOPNNOP ] === [ . ]
47. [ OOOOPNNPN ] === [ / ]
48. [ OOOOPNNPO ] === [ 0 ]
49. [ OOOOPNNPP ] === [ 1 ]
50. [ OOOOPNONN ] === [ 2 ]
51. [ OOOOPNONO ] === [ 3 ]
52. [ OOOOPNONP ] === [ 4 ]
53. [ OOOOPNOON ] === [ 5 ]
54. [ OOOOPNOOO ] === [ 6 ]
55. [ OOOOPNOOP ] === [ 7 ]
56. [ OOOOPNOPN ] === [ 8 ]
57. [ OOOOPNOPO ] === [ 9 ]
58. [ OOOOPNOPP ] === [ : ]
59. [ OOOOPNPNN ] === [ ; ]
60. [ OOOOPNPNO ] === [ < ]
61. [ OOOOPNPNP ] === [ = ]
62. [ OOOOPNPON ] === [ > ]
63. [ OOOOPNPOO ] === [ ? ]
64. [ OOOOPNPOP ] === [ @ ]
65. [ OOOOPNPPN ] === [ A ]
66. [ OOOOPNPPO ] === [ B ]
67. [ OOOOPNPPP ] === [ C ]
68. [ OOOOPONNN ] === [ D ]
69. [ OOOOPONNO ] === [ E ]
70. [ OOOOPONNP ] === [ F ]
71. [ OOOOPONON ] === [ G ]
72. [ OOOOPONOO ] === [ H ]
73. [ OOOOPONOP ] === [ I ]
74. [ OOOOPONPN ] === [ J ]
75. [ OOOOPONPO ] === [ K ]
76. [ OOOOPONPP ] === [ L ]
77. [ OOOOPOONN ] === [ M ]
78. [ OOOOPOONO ] === [ N ]
79. [ OOOOPOONP ] === [ O ]
80. [ OOOOPOOON ] === [ P ]
81. [ OOOOPOOOO ] === [ Q ]
82. [ OOOOPOOOP ] === [ R ]
83. [ OOOOPOOPN ] === [ S ]
84. [ OOOOPOOPO ] === [ T ]
85. [ OOOOPOOPP ] === [ U ]
86. [ OOOOPOPNN ] === [ V ]
87. [ OOOOPOPNO ] === [ W ]
88. [ OOOOPOPNP ] === [ X ]
89. [ OOOOPOPON ] === [ Y ]
90. [ OOOOPOPOO ] === [ Z ]
91. [ OOOOPOPOP ] === [ [ ]
92. [ OOOOPOPPN ] === [ \ ]
93. [ OOOOPOPPO ] === [ ] ]
94. [ OOOOPOPPP ] === [ ^ ]
95. [ OOOOPPNNN ] === [ _ ]
96. [ OOOOPPNNO ] === [ ` ]
97. [ OOOOPPNNP ] === [ a ]
98. [ OOOOPPNON ] === [ b ]
99. [ OOOOPPNOO ] === [ c ]
100. [ OOOOPPNOP ] === [ d ]
101. [ OOOOPPNPN ] === [ e ]
102. [ OOOOPPNPO ] === [ f ]
103. [ OOOOPPNPP ] === [ g ]
104. [ OOOOPPONN ] === [ h ]
105. [ OOOOPPONO ] === [ i ]
106. [ OOOOPPONP ] === [ j ]
107. [ OOOOPPOON ] === [ k ]
108. [ OOOOPPOOO ] === [ l ]
109. [ OOOOPPOOP ] === [ m ]
110. [ OOOOPPOPN ] === [ n ]
111. [ OOOOPPOPO ] === [ o ]
112. [ OOOOPPOPP ] === [ p ]
113. [ OOOOPPPNN ] === [ q ]
114. [ OOOOPPPNO ] === [ r ]
115. [ OOOOPPPNP ] === [ s ]
116. [ OOOOPPPON ] === [ t ]
117. [ OOOOPPPOO ] === [ u ]
118. [ OOOOPPPOP ] === [ v ]
119. [ OOOOPPPPN ] === [ w ]
120. [ OOOOPPPPO ] === [ x ]
121. [ OOOOPPPPP ] === [ y ]
122. [ OOOPNNNNN ] === [ z ]
123. [ OOOPNNNNO ] === [ { ]
124. [ OOOPNNNNP ] === [ | ]
125. [ OOOPNNNON ] === [ } ]
126. [ OOOPNNNOO ] === [ ~ ]
127. [ OOOPNNNOP ] === [ ]
128. [ OOOPNNNPN ] === [ А ]
129. [ OOOPNNNPO ] === [ Б ]
130. [ OOOPNNNPP ] === [ В ]
131. [ OOOPNNONN ] === [ Г ]
132. [ OOOPNNONO ] === [ Д ]
133. [ OOOPNNONP ] === [ Е ]
134. [ OOOPNNOON ] === [ Ё ]
135. [ OOOPNNOOO ] === [ Ж ]
136. [ OOOPNNOOP ] === [ З ]
137. [ OOOPNNOPN ] === [ И ]
138. [ OOOPNNOPO ] === [ Й ]
139. [ OOOPNNOPP ] === [ К ]
140. [ OOOPNNPNN ] === [ Л ]
141. [ OOOPNNPNO ] === [ М ]
142. [ OOOPNNPNP ] === [ Н ]
143. [ OOOPNNPON ] === [ О ]
144. [ OOOPNNPOO ] === [ П ]
145. [ OOOPNNPOP ] === [ Р ]
146. [ OOOPNNPPN ] === [ С ]
147. [ OOOPNNPPO ] === [ Т ]
148. [ OOOPNNPPP ] === [ У ]
149. [ OOOPNONNN ] === [ Ф ]
150. [ OOOPNONNO ] === [ Х ]
151. [ OOOPNONNP ] === [ Ц ]
152. [ OOOPNONON ] === [ Ч ]
153. [ OOOPNONOO ] === [ Ш ]
154. [ OOOPNONOP ] === [ Щ ]
155. [ OOOPNONPN ] === [ Ъ ]
156. [ OOOPNONPO ] === [ Ы ]
157. [ OOOPNONPP ] === [ Ь ]
158. [ OOOPNOONN ] === [ Э ]
159. [ OOOPNOONO ] === [ Ю ]
160. [ OOOPNOONP ] === [ Я ]
161. [ OOOPNOOON ] === [ € ]
162. [ OOOPNOOOO ] === [ £ ]
163. [ OOOPNOOOP ] === [ ₽ ]
164. [ OOOPNOOPN ] === [ ₿ ]
165. [ OOOPNOOPO ] === [ ± ]
166. [ OOOPNOOPP ] === [ а ]
167. [ OOOPNOPNN ] === [ б ]
168. [ OOOPNOPNO ] === [ в ]
169. [ OOOPNOPNP ] === [ г ]
170. [ OOOPNOPON ] === [ д ]
171. [ OOOPNOPOO ] === [ е ]
172. [ OOOPNOPOP ] === [ ё ]
173. [ OOOPNOPPN ] === [ ж ]
174. [ OOOPNOPPO ] === [ з ]
175. [ OOOPNOPPP ] === [ и ]
176. [ OOOPNPNNN ] === [ й ]
177. [ OOOPNPNNO ] === [ к ]
178. [ OOOPNPNNP ] === [ л ]
179. [ OOOPNPNON ] === [ м ]
180. [ OOOPNPNOO ] === [ н ]
181. [ OOOPNPNOP ] === [ о ]
182. [ OOOPNPNPN ] === [ п ]
183. [ OOOPNPNPO ] === [ р ]
184. [ OOOPNPNPP ] === [ с ]
185. [ OOOPNPONN ] === [ т ]
186. [ OOOPNPONO ] === [ у ]
187. [ OOOPNPONP ] === [ ф ]
188. [ OOOPNPOON ] === [ х ]
189. [ OOOPNPOOO ] === [ ц ]
190. [ OOOPNPOOP ] === [ ч ]
191. [ OOOPNPOPN ] === [ ш ]
192. [ OOOPNPOPO ] === [ щ ]
193. [ OOOPNPOPP ] === [ ъ ]
194. [ OOOPNPPNN ] === [ ы ]
195. [ OOOPNPPNO ] === [ ь ]
196. [ OOOPNPPNP ] === [ э ]
197. [ OOOPNPPON ] === [ ю ]
198. [ OOOPNPPOO ] === [ я ]
199. [ OOOPNPPOP ] === [ « ]
200. [ OOOPNPPPN ] === [ » ]
201. [ OOOPNPPPO ] === [ µ ]
202. [ OOOPNPPPP ] === [ § ]
203. [ OOOPONNNN ] === [ ─ ]
204. [ OOOPONNNO ] === [ ━ ]
205. [ OOOPONNNP ] === [ │ ]
206. [ OOOPONNON ] === [ ┃ ]
207. [ OOOPONNOO ] === [ ┄ ]
208. [ OOOPONNOP ] === [ ┅ ]
209. [ OOOPONNPN ] === [ ┆ ]
210. [ OOOPONNPO ] === [ ┇ ]
211. [ OOOPONNPP ] === [ ┈ ]
212. [ OOOPONONN ] === [ ┉ ]
213. [ OOOPONONO ] === [ ┊ ]
214. [ OOOPONONP ] === [ ┋ ]
215. [ OOOPONOON ] === [ ┌ ]
216. [ OOOPONOOO ] === [ ┍ ]
217. [ OOOPONOOP ] === [ ┎ ]
218. [ OOOPONOPN ] === [ ┏ ]
219. [ OOOPONOPO ] === [ ┐ ]
220. [ OOOPONOPP ] === [ ┑ ]
221. [ OOOPONPNN ] === [ ┒ ]
222. [ OOOPONPNO ] === [ ┓ ]
223. [ OOOPONPNP ] === [ └ ]
224. [ OOOPONPON ] === [ ┕ ]
225. [ OOOPONPOO ] === [ ┖ ]
226. [ OOOPONPOP ] === [ ┗ ]
227. [ OOOPONPPN ] === [ ┘ ]
228. [ OOOPONPPO ] === [ ┙ ]
229. [ OOOPONPPP ] === [ ┚ ]
230. [ OOOPOONNN ] === [ ┛ ]
231. [ OOOPOONNO ] === [ ├ ]
232. [ OOOPOONNP ] === [ ┝ ]
233. [ OOOPOONON ] === [ ┞ ]
234. [ OOOPOONOO ] === [ ┟ ]
235. [ OOOPOONOP ] === [ ┠ ]
236. [ OOOPOONPN ] === [ ┡ ]
237. [ OOOPOONPO ] === [ ┢ ]
238. [ OOOPOONPP ] === [ ┣ ]
239. [ OOOPOOONN ] === [ ┤ ]
240. [ OOOPOOONO ] === [ ┥ ]
241. [ OOOPOOONP ] === [ ┦ ]
242. [ OOOPOOOON ] === [ ┧ ]
243. [ OOOPOOOOO ] === [ ┨ ]
244. [ OOOPOOOOP ] === [ ┩ ]
245. [ OOOPOOOPN ] === [ ┪ ]
246. [ OOOPOOOPO ] === [ ┫ ]
247. [ OOOPOOOPP ] === [ ┬ ]
248. [ OOOPOOPNN ] === [ ┭ ]
249. [ OOOPOOPNO ] === [ ┮ ]
250. [ OOOPOOPNP ] === [ ┯ ]
251. [ OOOPOOPON ] === [ ┰ ]
252. [ OOOPOOPOO ] === [ ┱ ]
253. [ OOOPOOPOP ] === [ ┲ ]
254. [ OOOPOOPPN ] === [ ┳ ]
255. [ OOOPOOPPO ] === [ ┴ ]
256. [ OOOPOOPPP ] === [ ┵ ]
257. [ OOOPOPNNN ] === [ ┶ ]
258. [ OOOPOPNNO ] === [ ┷ ]
259. [ OOOPOPNNP ] === [ ┸ ]
260. [ OOOPOPNON ] === [ ┹ ]
261. [ OOOPOPNOO ] === [ ┺ ]
262. [ OOOPOPNOP ] === [ ┻ ]
263. [ OOOPOPNPN ] === [ ┼ ]
264. [ OOOPOPNPO ] === [ ┽ ]
265. [ OOOPOPNPP ] === [ ┾ ]
266. [ OOOPOPONN ] === [ ┿ ]
267. [ OOOPOPONO ] === [ ╀ ]
268. [ OOOPOPONP ] === [ ╁ ]
269. [ OOOPOPOON ] === [ ╂ ]
270. [ OOOPOPOOO ] === [ ╂ ]
271. [ OOOPOPOOP ] === [ ╄ ]
272. [ OOOPOPOPN ] === [ ╅ ]
273. [ OOOPOPOPO ] === [ ╆ ]
274. [ OOOPOPOPP ] === [ ╇ ]
275. [ OOOPOPPNN ] === [ ╈ ]
276. [ OOOPOPPNO ] === [ ╉ ]
277. [ OOOPOPPNP ] === [ ╊ ]
278. [ OOOPOPPON ] === [ ╋ ]
279. [ OOOPOPPOO ] === [ ╌ ]
280. [ OOOPOPPOP ] === [ ╍ ]
281. [ OOOPOPPPN ] === [ ╎ ]
282. [ OOOPOPPPO ] === [ ╏ ]
283. [ OOOPOPPPP ] === [ ═ ]
284. [ OOOPPNNNN ] === [ ║ ]
285. [ OOOPPNNNO ] === [ ╒ ]
286. [ OOOPPNNNP ] === [ ╓ ]
287. [ OOOPPNNON ] === [ ╔ ]
288. [ OOOPPNNOO ] === [ ╕ ]
289. [ OOOPPNNOP ] === [ ╖ ]
290. [ OOOPPNNPN ] === [ ╗ ]
291. [ OOOPPNNPO ] === [ ╘ ]
292. [ OOOPPNNPP ] === [ ╙ ]
293. [ OOOPPNONN ] === [ ╚ ]
294. [ OOOPPNONO ] === [ ╛ ]
295. [ OOOPPNONP ] === [ ╜ ]
296. [ OOOPPNOON ] === [ ╝ ]
297. [ OOOPPNOOO ] === [ ╞ ]
298. [ OOOPPNOOP ] === [ ╟ ]
299. [ OOOPPNOPN ] === [ ╠ ]
300. [ OOOPPNOPO ] === [ ╡ ]
301. [ OOOPPNOPP ] === [ ╢ ]
302. [ OOOPPNPNN ] === [ ╣ ]
303. [ OOOPPNPNO ] === [ ╤ ]
304. [ OOOPPNPNP ] === [ ╥ ]
305. [ OOOPPNPON ] === [ ╦ ]
306. [ OOOPPNPOO ] === [ ╧ ]
307. [ OOOPPNPOP ] === [ ╨ ]
308. [ OOOPPNPPN ] === [ ╩ ]
309. [ OOOPPNPPO ] === [ ╪ ]
310. [ OOOPPNPPP ] === [ ╫ ]
311. [ OOOPPONNN ] === [ ╬ ]
312. [ OOOPPONNO ] === [ ╭ ]
313. [ OOOPPONNP ] === [ ╮ ]
314. [ OOOPPONON ] === [ ╯ ]
315. [ OOOPPONOO ] === [ ╰ ]
316. [ OOOPPONOP ] === [ ╱ ]
317. [ OOOPPONPN ] === [ ╲ ]
318. [ OOOPPONPO ] === [ ╳ ]
319. [ OOOPPONPP ] === [ ╴ ]
320. [ OOOPPOONN ] === [ ╵ ]
321. [ OOOPPOONO ] === [ ╶ ]
322. [ OOOPPOONP ] === [ ╷ ]
323. [ OOOPPOOON ] === [ ╸ ]
324. [ OOOPPOOOO ] === [ ╹ ]
325. [ OOOPPOOOP ] === [ ╺ ]
326. [ OOOPPOOPN ] === [ ╻ ]
327. [ OOOPPOOPO ] === [ ╼ ]
328. [ OOOPPOOPP ] === [ ╽ ]
329. [ OOOPPOPNN ] === [ ╾ ]
330. [ OOOPPOPNO ] === [ ╿ ]
331. [ OOOPPOPNP ] === [ ▀ ]
332. [ OOOPPOPON ] === [ ▁ ]
333. [ OOOPPOPOO ] === [ ▂ ]
334. [ OOOPPOPOP ] === [ ▃ ]
335. [ OOOPPOPPN ] === [ ▄ ]
336. [ OOOPPOPPO ] === [ ▅ ]
337. [ OOOPPOPPP ] === [ ▆ ]
338. [ OOOPPPNNN ] === [ ▇ ]
339. [ OOOPPPNNO ] === [ █ ]
340. [ OOOPPPNNP ] === [ ▉ ]
341. [ OOOPPPNON ] === [ ▊ ]
342. [ OOOPPPNOO ] === [ ▋ ]
343. [ OOOPPPNOP ] === [ ▌ ]
344. [ OOOPPPNPN ] === [ ▍ ]
345. [ OOOPPPNPO ] === [ ▎ ]
346. [ OOOPPPNPP ] === [ ▏ ]
347. [ OOOPPPONN ] === [ ▐ ]
348. [ OOOPPPONO ] === [ ░ ]
349. [ OOOPPPONP ] === [ ▒ ]
350. [ OOOPPPOON ] === [ ▓ ]
351. [ OOOPPPOOO ] === [ ▔ ]
352. [ OOOPPPOOP ] === [ ▕ ]
353. [ OOOPPPOPN ] === [ ▖ ]
354. [ OOOPPPOPO ] === [ ▗ ]
355. [ OOOPPPOPP ] === [ ▘ ]
356. [ OOOPPPPNN ] === [ ▙ ]
357. [ OOOPPPPNO ] === [ ▚ ]
358. [ OOOPPPPNP ] === [ ▛ ]
359. [ OOOPPPPON ] === [ ▜ ]
360. [ OOOPPPPOO ] === [ ▝ ]
361. [ OOOPPPPOP ] === [ ▞ ]
362. [ OOOPPPPPN ] === [ ▟ ]
363. [ OOOPPPPPO ] === [ © ]
364. [ OOOPPPPPP ] === [ ® ]
365. [ OOPNNNNNN ] === [ ™ ]

Last edited by poststatist on 02 Jul 2020 09:48, edited 4 times in total.
Программист, либертарианец и просто свободный человек.
User avatar
Shaos
Admin
Posts: 24012
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by Shaos »

А почему бы не повторить ASCII в первых 127 символах?
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
poststatist
Novelist
Posts: 25
Joined: 01 Jun 2020 07:52
Location: Новосибирск

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by poststatist »

Shaos wrote:А почему бы не повторить ASCII в первых 127 символах?
Done.
Программист, либертарианец и просто свободный человек.
User avatar
TernarySystem
Doomed
Posts: 625
Joined: 27 Jul 2018 12:07

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by TernarySystem »

poststatist wrote:
Shaos wrote:А почему бы не повторить ASCII в первых 127 символах?
Done.
А зачем в кодировке Вы используете старших три разряда трайта? Ведь достаточно и шести разрядов...
User avatar
poststatist
Novelist
Posts: 25
Joined: 01 Jun 2020 07:52
Location: Новосибирск

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by poststatist »

TernarySystem wrote:
poststatist wrote:
Shaos wrote:А почему бы не повторить ASCII в первых 127 символах?
Done.
А зачем в кодировке Вы используете старших три разряда трайта? Ведь достаточно и шести разрядов...
Задел на будущее развитие.
Программист, либертарианец и просто свободный человек.
User avatar
TernarySystem
Doomed
Posts: 625
Joined: 27 Jul 2018 12:07

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by TernarySystem »

А зачем в кодировке Вы используете старших три разряда трайта? Ведь достаточно и шести разрядов...[/quote]
Задел на будущее развитие.[/quote]

... задел - больших ресурсов требует - например в памяти будут отображаться постоянно три трита которые равны 0?
User avatar
poststatist
Novelist
Posts: 25
Joined: 01 Jun 2020 07:52
Location: Новосибирск

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by poststatist »

TernarySystem wrote:
А зачем в кодировке Вы используете старших три разряда трайта? Ведь достаточно и шести разрядов...
Задел на будущее развитие.
... задел - больших ресурсов требует - например в памяти будут отображаться постоянно три трита которые равны 0?
Я создавал кодировку исходя из предположения, что минимально-адресуемая единица памяти составляет 9 тритов. Как у создаваемого мной процессора (о нём позднее). В иных случаях можно откинуть эти лишние триты.
Программист, либертарианец и просто свободный человек.
User avatar
TernarySystem
Doomed
Posts: 625
Joined: 27 Jul 2018 12:07

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by TernarySystem »

... задел - больших ресурсов требует - например в памяти будут отображаться постоянно три трита которые равны 0?
Я создавал кодировку исходя из предположения, что минимально-адресуемая единица памяти составляет 9 тритов. Как у создаваемого мной процессора (о нём позднее). В иных случаях можно откинуть эти лишние триты.

Ок. :)
User avatar
poststatist
Novelist
Posts: 25
Joined: 01 Jun 2020 07:52
Location: Новосибирск

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by poststatist »

Расширил псевдографику, добавил символ ™.
Программист, либертарианец и просто свободный человек.
User avatar
poststatist
Novelist
Posts: 25
Joined: 01 Jun 2020 07:52
Location: Новосибирск

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by poststatist »

AlexanderZh wrote:
poststatist wrote:Расширил псевдографику
А первые три трита могут указывать цвет символа :mrgreen: по триту на канал RGB. Только фон общий
Думаю, что более уместно будет цвет кодировать отдельно. Отдельным трайтом, по три трита на канал. Итого 19683 цветов.
Например:
[ POOPPPONN PPPNNNNNN POOPPPONO PPPNNNNNN POOPPPONP PPPNNNNNN] === ░▒▓
Но в таком случае, невозможно использовать третий трайт, а второй нарушает спецификацию TUC-9:
Если старший трит равен P активируется "мультитрайтный" режим кодирования и символ кодируется уже не одним, а двумя или даже тремя трайтами, но не более. При этом N означает конец "мультитрайтного" режима, а O указывает на его отсутствие.
Программист, либертарианец и просто свободный человек.
User avatar
poststatist
Novelist
Posts: 25
Joined: 01 Jun 2020 07:52
Location: Новосибирск

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by poststatist »

Вместо этого, можно создать двухтрайтный (всегда) управляющий символ COLOR, который будет задавать цвет для всех последующих символов.
Например:
[ POPNNNNNN PPPNNNNNN POOPPPONN POOPPPONO POOPPPONP ] === ░▒▓
Программист, либертарианец и просто свободный человек.
User avatar
poststatist
Novelist
Posts: 25
Joined: 01 Jun 2020 07:52
Location: Новосибирск

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by poststatist »

Получил сегодня диплом, написал на JS имплементацию TUC-9
Программист, либертарианец и просто свободный человек.
User avatar
Shaos
Admin
Posts: 24012
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: TUC-9 (TernaryUniversalCode-9) | Троичный аналог UTF-8

Post by Shaos »

poststatist wrote:Получил сегодня диплом
Поздравляю! :kruto:
Я тут за главного - если что шлите мыло на me собака shaos точка net