Kas lielāks – simbols vai baits?

Sākumā vēlams atbildēt uz virsrakstā uzdoto jautājumu un tad doties tālāk šī raksta lasīšanas dziļumos..

Ja nu esat savā lasīšanā tikuši līdz šai vietai, tad uz jautājumu esat jau atbildējuši. Domājams, ka vairākums diezgan pareizi ir uzskatījuši simbolu un baitu par līdzvērtīgiem atmiņas aizņemšanas ziņā, jo patiesi – katram taču skaidrs, ka vienu baitu lielā atmiņas vietā iespējams ierakstīt vienu simbolu informācijas (protams, varam piekasīties, ka šādi var ierakstīt vienu ASCII simbolu, bet UNICODE simbolam vajadzēs divus baitus, utt., bet tas nav pēc būtības). Taču, pat ASCII kodējumā ir sastopami izņēmumi.. Teiksim, kā ir ar simbolu `\n` (C++ sintaksē) jeb pāreju uz jaunu rindu? Windows sistēmās šis simbols īstenībā aizņem divus baitus – viens baits vajadzīgs priekš rindas beigu pazīmes, otrs – priekš jaunas rindas sākuma pazīmes. Citās vidēs tas tā nav, bet tā kā mēs visi strādājam Windows (atlikt piekasīšanos!),  tad tas jāņem vērā.

Tātad, ja ar B apzīmējam informācijas apjomu baitos, bet ar S – informācijas apjomu simbolos, tad klasiskajā gadījumā (ASCII kodējums, Windows vide) iegūstam nevienādību B>=S (nevienādība dēļ pārejas uz jaunu rindu – viens simbols, bet divi baiti).

Tas ir tas, ko varam apgūt, lasot attiecīgo literatūru un jūtoties gudri. Bet tagad pats galvenais jautājums – vai var būt situācija, kad B<S? Tas ir, vai var eksistēt tāds simbols, kas aizņem mazāk par vienu baitu informācijas? Atkal, nedomāsim visādus speciālgadījumus, kad, piemēram, nepieciešams kodēt tikai 128 simbolus, nevis pilnu ASCII tabulu ar 256 simboliem, un tad varētu ieekonomēt uz bitu rēķina, 8 bitu vietā izmantojot tikai 7..

Tātad, teiksim tā – mums dota pilna ASCII tabula ar 256 simboliem, kurus visus vajag kodēt. Vai šajos apstākļos iespējams kodēt divus simbolus vienā baitā?

Tagad laiks individuālai domāšanai un atbildēšanai pašiem sev..

Tagad (tā kā vēl neko neesat izdomājuši), priekšā teikšana – šis ir atjautības uzdevums, nevis tests datorzinībās..

Tagad vēl mazliet laiks individuālai domāšanai un atbildēšanai pašiem sev..

Un tagad atbilde..

Jā, tā var būt – latviešu valodas speciālie simboli ar diakritiskajām zīmēm (garumzīmēm un mīkstinājuma zīmēm) ir tieši tādi.. Jo patiešām – jebkuru latviešu valodas simbolu varam saglabāt vienā baitā (ja neticiet man, pajautājiet kādam jums pazīstamākam speciālistam), bet simboli speciālajiem burtiem (tādiem kā `aa`, `ee`, `kj`, `ch`, `lj` u.tml.) taču ir divi..😉

Komentēt

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Mainīt )

Twitter picture

You are commenting using your Twitter account. Log Out / Mainīt )

Facebook photo

You are commenting using your Facebook account. Log Out / Mainīt )

Google+ photo

You are commenting using your Google+ account. Log Out / Mainīt )

Connecting to %s