Prévia do material em texto
Introdução à Computação - João Amâncio Gonçalves de Oliveira Júnior - UNIGRAN
27
Aula 03
REPRESENTAÇÃO DA
ESCRITA NO COMPUTADOR
A informática desenvolveu-se rapidamente, e pessoas do mundo inteiro a utilizam
através da internet. São vários paises, culturas e escritas diferentes, tornando-se complexas
a representação da escrita no computador.
Com o objetivo de permitir a troca de dados entre máquinas de diferentes tipos e
fabricantes foi proposto o uso de um código comum, a fi m de possibilitar a comunicação
entre computadores.
Foi então criado o “American Standard Code for Information Interchange” (Código
Padrão Norte-americano para Intercâmbio de Informações), conhecido como código ASCII,
Introdução à Computação - João Amâncio Gonçalves de Oliveira Júnior - UNIGRAN
28
que é uma tabela de código numérico usado para representar os caracteres utilizados em
quase todos os computadores, impressoras e programas.
Inicialmente foi criada utilizando todas as combinações possíveis de 7 bits
(computadores operam com o sistema binário), tendo 128 códigos disponíveis (de 0 a 127).
Cada caractere (formado por letra ou número) possui um código correspondente. Das 128
posições, as primeiras 32 (0 a 31) correspondem a códigos de controle que são utilizados
para controlar dispositivos (tais como monitores e impressoras). Alguns desses códigos não
produzem caracteres quando impressos em algum dispositivo (como a tela do computador).
Veja a tabela abaixo:
Cód Caractere Cód Caractere
0 NULL (nulo) 1 SOH (Start of Heading/ início de cabeçalho)
2 STX (Start of TeXt/ início de texto) 3 ETX (End of TeXt/ fi m de texto)
4 EOT (End Of Transmission/ fi m de transmissão) 5 ENQ (ENquiry/ inquirição, consulta)
6 ACK (ACKnowledge/ confi rmação, entendido) 7 BEL (BELL, BEEP/ campainha)
8 BS (Backspace/ retorno de 1 caractere) 9
HT (Horinzontal Tab/ tabulação
horizontal)
10 LF (Line Feed) 11 VT (Vertical Tab/ tabulação vertical)
12 FF (Form Feed/ alimentação de formulário) 13
CR (Carriage Return/ retorno ao início da
linha)
14 SO (Serial Out/ Saída Serial) (Shift Out/ deslocamento para fora) 15
SI (Serial In/ entrada serial)
(Shift In/ deslocamento para dentro)
16 DLE (Data Link Escape/ escape de conexão) 17
DC1/XON (Device Control 1/ controle de
dispositivo 1)
18 DC2 (Device Control 2/ controle de dispositivo 2) 19
DC3/XOFF (Device Control 3/ controle de
dispositivo 3)
20 DC4 (Device Control 4/ controle de dispositivo 4) 21
NAK (Negative AcKnowledge/
confi rmação negativa)
22 SYN (SYNchronous Idle/ espera síncrona) 23
ETB (End Transm. Block/ bloco de fi m de
transmissão)
24 CAN (Cancel/ cancelamento) 25 EM (end fo Media/ fi m do meio ou mídia)
26 SUB (SUBstitute/ subistituir) 27 ESC (ESCape/escape)
28 FS (Files Separator/ separador de arquivo) 29
GS (Group Separator/ separador de
grupo)
30
RS (Request to Send, Record
Separator/ requisição de envio,
separador de registro
31 US (Unit Separator/ separador de unidade)
Tabela ASCII: Códigos de Controle (0..31)
Introdução à Computação - João Amâncio Gonçalves de Oliveira Júnior - UNIGRAN
29
Tabela ASCII: Caracteres-padrão (32..127)
Tabela ASCII: Caracteres Estendidos (128..255)
Cód Carac Cód Carac Cód Carac Cód Carac Cód Carac Cód Carac
128 Ç 129 ü 130 é 131 â 132 ä 133 à
134 å 135 ç 136 ê 137 ë 138 è 139 Ï
140 î 141 ì 142 Ä 143 Å 144 É 145 æ
146 Æ 147 ô 148 ö 149 ò 150 û 151 ù
152 ÿ 153 Ö 154 Ü 155 ø 156 £ 157 Ø
158 × 159 ƒ 160 á 161 í 162 ó 163 ú
164 ñ 165 Ñ 166 ª 167 º 168 ¿ 169 ®
170 ¬ 171 ½ 172 ¼ 173 ¡ 174 « 175 »
176 ░ 177 ▒ 178 ▓ 179 │ 180 ┤ 181 Á
Cód Carac Cód Carac Cód Carac Cód Carac Cód Carac Cód Carac
32 <espaço> 33 ! 34 “ 35 # 36 $ 37 %
38 & 39 ‘ 40 ( 41 ) 42 * 43 +
44 , 45 - 46 . 47 / 48 0 49 1
50 2 51 3 52 4 53 5 54 6 55 7
56 8 59 9 58 : 59 ; 60 < 61 =
62 > 63 ? 64 @ 65 A 66 B 67 C
68 D 69 E 70 F 71 G 72 H 73 I
74 J 75 K 76 L 77 M 78 N 79 O
80 P 81 Q 82 R 83 S 84 T 85 U
86 V 87 W 88 X 89 Y 90 Z 91 [
92 \ 93 ] 94 ^ 95 _ 96 ` 97 a
98 b 99 c 100 d 101 e 102 f 103 g
104 h 105 i 106 j 107 k 108 l 109 m
110 n 111 o 112 p 113 q 114 r 115 s
116 t 117 u 118 v 119 w 120 x 121 y
122 z 123 { 124 | 125 } 126 ~ 127 <enter>
Um problema encontrado na tabela ASCII era a representação de textos em
português, pois a mesma não representava todos os caracteres da nossa ortografi a, como:
á, é, ô, ç, ü, entre outros.
Para solucionar esse problema, a tabela ASCII foi expandida até o número 255,
correspondendo a um número de 8 bits. Essa nova tabela possui todos os caracteres da tabela
anterior de 7 bits, e com os novos caracteres, resolveu vários problemas de representação
da língua portuguesa.
Introdução à Computação - João Amâncio Gonçalves de Oliveira Júnior - UNIGRAN
30
182 Â 183 À 184 © 185 ╣ 186 ║ 187 ╗
188 ╝ 189 ¢ 190 ¥ 191 ┐ 192 └ 193 ┴
194 ┬ 195 ├ 196 ─ 197 ┼ 198 ã 199 Ã
200 ╚ 201 ╔ 202 ╩ 203 ╦ 204 ╠ 205 ═
206 ╬ 207 ¤ 208 δ 209 Ð 210 Ê 211 Ë
212 È 213 ı 214 Í 215 Î 216 Ï 217 ┘
218 ┌ 219 █ 220 ▄ 221 ¦ 222 Ì 223 ▀
224 Ó 225 ß 226 Ô 227 Ò 228 õ 229 Õ
230 M 231 þ 232 Þ 233 Ú 234 Û 235 Ù
236 ý 237 Ý 238 ¯ 239 ´ 240 241 ±
242 ‗ 243 ¾ 244 ¶ 245 § 246 ÷ 247 ¸
A tabela ASCII estendida não foi unicamente criada para atender as necessidades
da ortografi a portuguesa. Foram criadas várias tabelas ASCII de 8 bits, cada uma delas
adaptada às necessidades de uma ortografi a específi ca.
Tabela de códigos UNICODE
Com a necessidade de dar suporte a vários idiomas, foi criada a tabela de códigos
Unicode, um padrão de codifi cação de caracteres desenvolvido pelo Unicode Consortium
(www.unicode.org). O Unicode é uma tabela de 16 bits e fornece um único número para
cada caractere, não importa a plataforma, nem o programa, nem a língua, e a maioria dos
programas dá suporte ao Unicode. Abrange os mais variados sistemas de escrita como
latino, grego, cirílico, hebraico, árabe, japonês, chinês, etc., além de considerar símbolos
matemáticos, musicais, de moeda, etc. Em função da variedade de caracteres que apresenta,
a tabela Unicode é subdividida em blocos, sendo que primeiro bloco da tabela Unicode
(Latim básico) equivale exatamente à tabela ASCII de 7 bits.
Acesse o site http://www.unicode.org/charts/ e veja as tabelas que compõem o
Unicode.
Para demonstrar o conteúdo de um arquivo, será utilizado o software Notepad
++, que possui diversos recursos para edição de texto e dá suporte a várias linguagens de
programação. Para ativiar o Editor Hexa, clicar em Plugins, HEX-Editor e View in HEX.
Introdução à Computação - João Amâncio Gonçalves de Oliveira Júnior - UNIGRAN
31
Após abrir o arquivo, será mostrado o conteúdo em hexadecimal. Selecionando
o valor em hexa, no lado direito do editor o respectivo caracter estará selecionado. Na
fi gura é mostrado o conteúdo do arquivo, onde foi selecionada a palavra “American” e seus
respectivos valores em hexadecimal: 41 6d 65 72 69 63 61 6e. Transformando esses valores
hexa em decimal procure na tabela ASCII (ou Unicode) o valor correspondente: 65 109
101 114 105 99 97 110. Veja que na tabela é diferenciado a letra “A” (65) e “a” (97). Se
for alterado o caracter hexa, também será alterado no texto.
Para conseguir um caracter usando o teclado, abra um editor de texto (Notepad),
pressione a tecla <ALT> e o número do caracter (em decimal da tabela ASCII) que será
mostrado o caracter correspondente, Exemplo: usando o Notepad, pressione <Alt> e o
número 65 (no teclado numérico ativado). Levante os 2 dedos juntos. Deverá surgir a letra
A maiúscula na tela do programa.
ATIVIDADES
As atividades referentes a esta aula estão disponibilizadas na ferramenta “Sala
Virtual - Atividades”. Após respondê-las, enviem-nas por meio do Portfólio- ferramenta do
ambiente de aprendizagem UNIGRANVirtual. Em caso de dúvidas, utilize as ferramentas
apropriadas para se comunicar com o professor.
Introdução à Computação - João Amâncio Gonçalves de Oliveira Júnior - UNIGRAN
32