Talk:Binary-to-text encoding

This is an old revision of this page, as edited by 2a02:8070:6394:7a00:1920:6758:18da:1df9 (talk) at 18:41, 29 December 2021 (Programming language implementations). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Latest comment: 3 years ago by 2A02:8070:6394:7A00:1920:6758:18DA:1DF9 in topic Programming language implementations
WikiProject iconComputer science C‑class Low‑importance
WikiProject iconThis article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
CThis article has been rated as C-class on Wikipedia's content assessment scale.
LowThis article has been rated as Low-importance on the project's importance scale.
Things you can help WikiProject Computer science with:

A few extras to consider

ASCII85 implementation in JavaScript

I wanted to add link to my "just written" implementation, however got a warning about conflict of interests. If anyone other will think that this information will be helpfull feel free to add this link to Article. NE0sIghT (talk) 21:24, 27 February 2018 (UTC)Reply

basE91

Uses 91 characters, and every pair of characters represents either 13 or 14 bits. Since 2^13 < 91*91 < 2^14, two characters can encode all 13-bit strings and some 14-bit strings; since 91*91=8281 and 2^13=8192, there are 89 combinations of two characters that are not used for representing strings of 13 characters. The particular choice is: for a string of 14 bits, if its lowest 13 represent a number greater than or equal to 89, the two characters are used to represent only these 13 bits; otherwise, 14 bits are encoded.

Do not move this explanation to the article; it is undocumented. - Liberatore(T) 13:45, 13 April 2006 (UTC)Reply

basE91 documents: http://base91.sourceforge.net/ ; TB100QM.pdf Ropata (talk) 17:47, 9 September 2019 (UTC)Reply

reviving 'ascii armor' concept

ASCII armor was apparently the original title of this article. It is now 'binary to text encoding'. The ascii armoring concept consists of more than just encoding binary into ascii, it also consists of encoding plain text for purposes of archival or transmission. Therefore, it should go back into the article. drefty.mac 17:33, 27 October 2006 (UTC)Reply

Base26 should be kept

Base26 is used for binary encoding. It is not as heavily used as other coding formats as it is still fairly new as an encoding format. Eyreland (talk) 03:18, 12 September 2013 (UTC)Reply

I apologize. At first glance it looked kind of spammy. Feel free to add it again, but use a citation format instead of a direct URL as a source. And please add a citation for the other two entries. —EncMstr (talk) 03:47, 12 September 2013 (UTC)Reply

Efficiency

It makes little sense to include a term 'efficiency' in the table, if there is not any kind of explanation or mentioning of what it is. Someone would probably want to add this information. - 141.213.15.66 (talk) 18:11, 19 March 2015 (UTC)Reply

I agree, I am looking at various systems, attempting to find one that I can follow, and I see efficiency in the chart, think it might be based on the ratio of base 10 to the converted base, but 10/16 is not .5(hexadecimal). I feel that if whoever added the efficiency section could add an explanation, then that would be better.67.221.121.30 (talk) 12:24, 28 June 2017 (UTC)YggdrasilReply
Added explanation of the efficiency. Lord Crc (talk) 12:13, 15 August 2017 (UTC)Reply

Decimal (base10)

I'm surprised this article does not even mention one of the most commonly used encoding for integer which is the decimal notation... — Preceding unsigned comment added by 90.9.199.223 (talk) 12:26, 6 February 2020 (UTC)Reply

This article is about binary, not decimal, and about text, not integer. --bdijkstra (talk) 13:04, 6 February 2020 (UTC)Reply
This article is about encoding of binary. Decimal, hexadecimal, and all text-representation of a binary in a certain base are encodings (half of the entries of the table). It is not about encoding *of* text, it is about encoding *to* text. The decimal encoding is as relevant as base58. It is a way to represent a binary integer with text characters. Yes we are very used to this representation, so it may seem unnecessary to add it. But the efficiency of the decimal representation can be helpful as a baseline (41.5%). — Preceding unsigned comment added by 90.9.199.223 (talk) 13:30, 6 February 2020 (UTC)Reply

Programming language implementations

I was looking at the programming language implementations for Base58 on this page while doing research for Wikipedia:Articles for deletion/Base58. I came to the conclusion that we are on the wrong path here. I could create, say, Base11 (for Spinal Tap fans) and Base666 (for use by daemons) write up some routines for Python, C, Forth, GW-BASIC, LOLCODE and Whitespace. publish them on GitHub, and add them to this list.

I say we should nuke the column. it isn't useful. --Guy Macon (talk) 18:04, 2 July 2020 (UTC)Reply

Indeed. Potentially interesting for student programmers, but in my opinion too trivial to classify as knowledge. --bdijkstra (talk) 18:16, 2 July 2020 (UTC)Reply
I'm for removing that column as well, unless you find all existing public implementations for all languages out there...--2A02:8070:6394:7A00:1920:6758:18DA:1DF9 (talk) 18:41, 29 December 2021 (UTC)Reply

Identifying the encoding used

Is there any way to guess the encoding used? Do any of these have any headers? Base64 for example uses padding with "=" at the end. How do other aglorithms fill remaining bytes? -- Thunderbolt (talk) 16:11, 7 December 2020 (UTC)Reply

Is PGP word list a Binary-to-Text Encoding?

Should PGP word list added in the list?--𝒞𝒽ℯℯ𝓈ℯ𝒹ℴℊ (talk) 01:53, 3 July 2021 (UTC)Reply

What does the ASCII line in the standards table mean?

This line is rather confusing.

Encoding Data type Efficiency Programming language implementations Comments
ASCII Arbitrary 87.5% Most languages

Given that ASCII text cannot represent arbitrary data why is it here? And how can it be 87.5% efficient given that it cannot represent half of all possible octets?

  • I added a point of clarification. I think you are thinking about one specific subset of what binary-to-text encodings are used for. While it is true that ASCII is not commonly used to represent arbitrary Binary data, Binary-encoded ASCII is still the most common data format there is. To address your claim "cannot represent half of all possible octets" that's entirely false. Any binary sequence can be represented in ASCII. It does take 2 characters to represent one octet, it only takes 8 ASCII characters to hold 7 octets. So the efficiency is 7/8 = 87.5%. Adam McCormick (talk) 00:43, 18 November 2021 (UTC)Reply
ASCII is ASCII, a 7 bit encoding. All the schemes listed in the article are forms of encoding binary data as ascii. Whereas if you allow control characters you could bit-shift 7 octets of 8-bit binary data into 8 octets of 127-bit ascii data this would ony be 7/8% efficient for multiples of 7 bytes and is certainly not commonly used. -- Q Chris (talk) 11:09, 18 November 2021 (UTC)Reply