alleora

computer science & systems development

Arkiv för kategori ‘Datavetenskap’

ASCII tabellen

Skrivet av ratache den juni 26, 2011

ASCII [’askɪ], eller American Standard Code for Information Interchange, är en teckenkodning som används för att representera bokstäver och andra tecken i datorer. Koden använder sju bitar vilket ger plats för 128 olika tecken. ASCII har samma tecken som referensversionen av ISO/IEC 646 plus 7-bitars styrkoderna i ISO/IEC 6429. ASCII designades för USA:s behov och räcker inte för något annat språk än engelska, eftersom några andra bokstäver än A-Z och a-z inte ingår. ASCII-standarden publicerades första gången 1963.

Med ASCII som grund har olika utvidgningar till 8 bitar gjorts, ofta kallade utökad ASCII. Till exempel ISO/IEC 8859-serien av teckenkodningar. De äldre kodningarna i Windows (CP1250, CP1252, CP932, m.fl) och Mac OS (MacRoman, MacJapanese, m.fl) är även de utvidgningar av ASCII. Dessa utvidgningar har ersatt ASCII i användning (eftersom 8 bitar är tillgängligt överallt numera), men de följer ASCII för de tecken som ingår i ASCII.

Internet startades med ASCII och 7 bitars överföring som grund, därför skapades nationella 7-bitsvarianter av ASCII i nästan alla länder, även i Storbritannien som behövde pundtecket £, och i Canada som ville stödja franska. Först ett gott stycke in på 1990-talet fungerade 8 bitars överföring av till exempel e-mail överallt på internet.

ASCII-utvidgningarna med 8 bitar, håller på att ersättas med Unicode, en teckenkodning som använder fler än 8 bitar, och som stöder alla språk. För att lagra Unicode i filer använder man oftast antingen UTF-8 som fungerar som en utökad ASCII (2-4 bytes för icke-ASCII-tecken), eller UTF-16 där tecknen lagras i 2-byte-sekvenser. (http://sv.wikipedia.org/wiki/ASCII)

ASCII-tabell
32 64 @ 96 ` 128 Ç 160 á 192 + 224 Ó
33 ! 65 A 97 a 129 ü 161 í 193 - 225 ß
34 " 66 B 98 b 130 é 162 ó 194 - 226 Ô
35 # 67 C 99 c 131 â 163 ú 195 + 227 Ò
36 $ 68 D 100 d 132 ä 164 ñ 196 - 228 õ
37 % 69 E 101 e 133 à 165 Ñ 197 + 229 Õ
38 & 70 F 102 f 134 å 166 ª 198 ã 230 µ
39 ' 71 G 103 g 135 ç 167 º 199 Ã 231 þ
40 ( 72 H 104 h 136 ê 168 ¿ 200 + 232 Þ
41 ) 73 I 105 i 137 ë 169 ® 201 + 233 Ú
42 * 74 J 106 j 138 è 170 ¬ 202 - 234 Û
43 + 75 K 107 k 139 ï 171 ½ 203 - 235 Ù
44 , 76 L 108 l 140 î 172 ¼ 204 ¦ 236 ý
45 - 77 M 109 m 141 ì 173 ¡ 205 - 237 Ý
46 . 78 N 110 n 142 Ä 174 « 206 + 238 ¯
47 / 79 O 111 o 143 Å 175 » 207 ¤ 239 ´
48 0 80 P 112 p 144 É 176 ¦ 208 ð 240 -
49 1 81 Q 113 q 145 æ 177 ¦ 209 Ð 241 ±
50 2 82 R 114 r 146 Æ 178 ¦ 210 Ê 242 =
51 3 83 S 115 s 147 ô 179 ¦ 211 Ë 243 ¾
52 4 84 T 116 t 148 ö 180 ¦ 212 È 244 ¶
53 5 85 U 117 u 149 ò 181 Á 213 i 245 §
54 6 86 V 118 v 150 û 182 Â 214 Í 246 ÷
55 7 87 W 119 w 151 ù 183 À 215 Î 247 ¸
56 8 88 X 120 x 152 ÿ 184 © 216 Ï 248 °
57 9 89 Y 121 y 153 Ö 185 ¦ 217 + 249 ¨
58 : 90 Z 122 z 154 Ü 186 ¦ 218 + 250 ·
59 ; 91 [ 123 { 155 ø 187 + 219 ¦ 251 ¹
60 < 92 \ 124 | 156 £ 188 + 220 _ 252 ³
61 = 93 ] 125 } 157 Ø 189 ¢ 221 ¦ 253 ²
62 > 94 ^ 126 ~ 158 × 190 ¥ 222 Ì 254 ¦
63 ? 95 _ 127  159 ƒ 191 + 223 ¯ 255

Sparad i Datavetenskap, Programmering | Taggad: , , , , , , | 1 Kommentar »

Lazy Bird

Skrivet av ratache den februari 2, 2011

The XML course, Python course and UML course has all hit the fan. So I’m very busy at the moment. There’s no significant report at the moment, all work is tutorial based and very basic at the moment. I had a presentation of ML for the other systems developers this monday and it went alright. Some presentations very really tedious and I think many in my class needs to study presentation techniques. Tedious. I could tell the majority of brains in the auditorium were hibernating away until their turn to present was up. Way to miss up on a opportunity to excel infront of the other systems students and teachers…

Exchanger XML Lite

Sparad i Datavetenskap | Taggad: , , , , , , , , , , , , , , | Lämna en kommentar »

Programmeringsspråkens historia i korthet

Skrivet av ratache den oktober 12, 2010

Datorer och programmering

En dator är en maskin som kan lagra, erhålla och bearbeta data. Bearbetningen av data som processorn utför skrivs i ett så kallat maskinspråk. Dock så är det en långsam och mödosam process att skriva program i maskinspråk där ska vi titta lite närmare på hur denna utveckling av dagens moderna programmering har skett.

Den första programmeraren

De första stegen mot dagens programmering kan spåras ända tillbaks till 1800-talet. Ada Lovelace skapade den första algoritmen som var ämnad för en maskin, den analytiska maskinen. Hon är därför kallad den första programmeraren.

Assemblerspråk

Det skulle dröja till 1950-talet innan de första kommersiella datorerna utvecklades och dessa kallades första generationen av datorer. De styrdes via maskinspråk som krävde väldigt precisa inmatningar av de matematiker och ingenjörer som använde dem. Därför utvecklades så kallade assemblerspråk som bestod av  memoreringstekniska koder. Exempelvis kunde olika sifferkoder representera kommandon in binär form. Även idag används ibland assemblerspråk för att skriva effektiv kod.

Högnivåspråk

Även om assemblerspråk effektiviserade programmeringen av datorer så fick programmeraren alltid tänka i termer om individuella maskininstruktioner. Dessutom blev datorer vanligare i takt med att deras kapacitet växte. Ett behov av att skriva med programmeringsspråk som var plattformsoberoende steg. Man utvecklade därför högnivåspråk som kunde skrivas med smidigare och mer lättförståelig kod. Sedan kompilerades koden till maskinspråk.

Vidareutveckling av programmering

Fler språk utvecklades och under sent 60-tal utvecklades det första objektorienterade språket, Simula. Även det strukturbaserade språket C utvecklades under denna period. Man hade nu tre skolor av programmering, logisk, strukturerad och objekt orienterad.

Under 70 och 80-talen började man utveckla fler program som utförde uppgifter som en person utan programmeringskunskaper kunde använda. Peka och klicka gränssnittet gjorde sitt intåg och man började utveckla ordbehandlingsprogram, kalkylprogram och spel.

Internetåldern

Under 90-talet kom operativsystemen och internet vilket orsakade en drastisk höjning av datoranvändare. Det krävdes inte längre stora skillnader i imperativ programmering men man sökte nya lösningar för att ändra värden, skapa eller ändra funktionalitet i existerande programmiljöer. Funktionell programmering var född och exempel på funktionella språk är Java och Visual Basic.  Dock räckte inte detta och scriptspråken var ett faktum för att göra det ännu enklare att programmera funktioner i existerande program.

Utvecklingen och ökningen av datoranvändningen har definitivt skapat ett behov av förenklad programmering. Man kan se att programmeringen har följt parallellt med hårdvaran, exempelvis kom högnivåspråken när motståndet var uppfunnet eftersom mängden datorer ökade, prestandan ökade och priserna sjönk. Kommunikation och information i samhället är tillgänglig via internet hela tiden idag. Behovet och möjligheten för att skapa program för varje situation i vardagen som kan uppstå blir stort. Bara fantasin sätter stopp.


 

 

Sparad i Datavetenskap, Programmering | 3 Kommentarer »

The butcher of computers

Skrivet av ratache den oktober 21, 2009

Anvisningar till morgondagens labb;

OBS! Det finns tre komponenter som ni inte skall demontera: processorn, moderkortet och minnet. Detta därför att dessa är mycket känsliga för statiskt elektricitet, och går lätt sönder. Ni skall dessutom under hela laborationen iaktta försiktighet med er dator, så att inga komponenter kommer till skada.

Jag tänkte med hjärnans högsta frekvens; ”LOL”. Lätt som en paj lär det bli. Mer rapporten som kommer dryga sig med beskrivningsfasen av varje del, går ju skriva hur mycket som.

Sparad i Datavetenskap | 1 Kommentar »

Lite om sorteringsalgoritmer

Skrivet av ratache den september 21, 2009

Dagens föreläsning i Datavetenskap handlade bland annat om sorteringsalgoritmer som är ett område vi ska titta mycket närmare på inför de större kommande programmeringskurserna.
Denna algoritm har stor betydelse inom programmering om man skall göra något större program eller hantera mycket data(databaser).
Teorin bakom den eller dem(det finns flera olika) är universal inom alla programmeringsspråk som baseras på C och Basic, de två fadersspråken de flesta språk baseras på.

Jag tänkte rada upp de tre största kategorierna som är de stora pelarna inom detta genom att länka till dom på wiki. Detta eftersom beskrivande information bakom dem är omfattande och jag vill inte gärna skriva fel. (Vissa bloggposter fungerar även som anteckningar för mig).

Man brukar börja med att sortera dessa algoritmer i 3 kategorier, Exchange, Insert och Partition. Skillnaden mellan de kategorierna är dagens hemuppgift så jag kan inte gå närmre in på dem just nu.

Insert (Insert sort) är den vi själva har hållt på med under C# programmeringen. Under föreläsningen nämndes Selection Sort och Bubble Sort. Selection sort är den vi har använt, Bubble sort var en lite weird sort enlig läraren och han vill helst vi tittade på den sist när vi förstått konceptet och hur de andra fungerar.

Selection sort på wiki.

Bubble sort på wiki

Sedan har vi Insertion sort på wiki

Slutligen har vi Partition varianten även kallad Quicksort och gissa om det även fanns info om den på wiki?

Andra delen av föreläsningen handlade om kompilering och maskinspråk, dessa ska vi läsa mycket om i kurslitteraturen. Programmeringsspråk som är mycket nära eller liknar maskinspråk kallas för högnivåspråk och här är ett par större exempel;
Assembly,
Fortran,
Cobol.

Dessa programspråk är mycket hårdvarunära språk och används till exempel för att kontrollera komponenter på och kopplade till moderkortet. De är också därför ofta knutna till den hårdvara dom är skrivna för och har därför ofta egna versioner på språket. Detta göra att assembly därmed inte är portabelt utan måste specialskrivas för varje objekt det ämnas.

Sparad i Datavetenskap, Programmering | Lämna en kommentar »

 
Följ

Få meddelanden om nya inlägg via e-post.