Transcript

Versão  0.8    Capítulo  2    Como  funciona  um  computador  eletrônico  digital?    

Um   computador   é   um   dispositivo   que   faz   cálculos,   executa  instruções   definidas   e   resolve   problemas.   Por   ser   eletrônico,   funciona   com   o  deslocamento  de  elétrons  em  circuitos  e,  por  ser  digital,  as  correntes  passam  ou  não   passam,   enquanto   em   um   computador   analógico,   em   contraposição   ao  digital,   pode   haver   variação   contínua   de   voltagem   ou   corrente.   Atualmente   os  circuitos  analógicos  são  restritos  aos  dispositivos  de  digitalização,  como  câmaras  digitais  ou  placas  de  som  acopladas  a  microfones.  A  base  do   funcionamento  de  um   computador   é   o   transístor,   dispositivo   com   três   polos.   No   transistor,   pode  haver   ou   não   passagem   de   corrente   elétrica   entre   dois   dos   polos,   o   que   é  determinado  pela  existência  de  carga  elétrica  no  terceiro  polo.  Existem  variações  nos  transístores,  mas  o  fato  de  que  eles  podem  agir  em  uma  cadeia  liga-­‐desliga  é  a  propriedade  que  é   importante  para  a  existência  de  computadores  eletrônicos  digitais.  

Um  transístor  pode  ser  esquematizado  conforme  se  mostra  na  figura  1:  

 

 Figura   1.   Esquema   de   um   transistor   (tipo   NPN,   há   outros   tipos).   A   corrente  elétrica  entre  “C”  (de  coletor)  e  “E”  (de  emissor)  ocorre  se  houver  carga  elétrica  em   B   (de   base).   Os   transistores   são   possíveis   graças   à   existência   de  materiais  chamados   “semicondutores”,   que   possuem   a   propriedade   de   transmitirem  corrente   elétrica   ou   não.   Quimicamente   são   feitos   de   Silício   ou   Germânio,  misturados  com  quantidades  muito  pequenas  de  Arsênio  ou  Boro.  Para  enfatizar:  se  existe  uma  diferença  de  potencial   (“voltagem”)  entre  C  e  E,  a  corrente  entre  esses  terminais  passará  somente  se  houver  carga  elétrica  em  B.    

Por  causa  das  propriedades  dos  transístores,  eles  podem  ser  usados  como   chaves   “liga-­‐desliga”,   com   a   vantagem   que   eles   não   têm   partes   móveis,  como  os  relés.  Essa  propriedade,  além  de  evitar  o  desgaste  inerente  à  existência  de  partes  móveis,  possibilitas  grande  velocidades.  

 

Processador  Um  processador  eletrônico  digital  é  um  circuito  constituído  por  uma  

série  de   transístores  que  podem  executar  operações   lógicas   e  matemáticas.  Na  figura  2  temos  exemplos  de  três  circuitos  lógicos  simples:  A  porta  AND,  a  porta  OR  e  a  porta  NOT,  que  significam  “e”,  “ou”  e  “não”,  respectivamente.    

 

 Figura   2.   Portas   lógicas   AND,   OR   e  NOT.   Acima,   estão   os   circuitos   eletrônicos  (simplificados)  das  portas  lógicas  correspondentes.  No  meio,  os  símbolos  dessas  portas   usados   em   circuitos   de   maior   complexidade.   Abaixo,   estão   as   tabelas-­‐verdade  de  cada  uma  das  portas  mostradas.    

 A   lógica   dos   componentes   eletrônicos   segue   a   chamada   lógica  

booleana,   que   se   refere   ao   matemático   e   filósofo   inglês   George   Boole   (1815-­‐1864),  que   lançou  as  bases  desse   sistema   lógico.  A   lógica  do  computador  pode  não  equivaler  à  lógica  que  empregamos  no  dia  a  dia.  Por  exemplo,  na  porta  lógica  “OR”,  se  qualquer  uma  das  duas  chaves   liga-­‐desliga  do  circuito  estiver   ligada,  a  corrente   passará,   pois   os   transístores   estão   montados   em   paralelo.   O   mesmo  ocorrerá   se   ambas   estiverem   ligadas.   Somente   não  haverá   corrente   se   as   duas  chaves  estiverem  desligadas.  Na  lógica  do  senso  comum,  o  “ou”,  às  vezes  significa  outra  situação.  Por  exemplo,  o  namorado  pergunta  para  a  namorada:   “Querida,  passaremos   o   Réveillon   desse   ano   na   casa   da   sua   mãe   ou   da   minha?”.  Evidentemente,   ao   contrário   do   que   ocorreria   no   caso   do   circuito   “OR”,   não  existe  a  possibilidade  de  se  passar  o  Réveillon  de  um  determinado  ano  em  duas  casas   distintas,   pois   o   Réveillon   se   refere   à   passagem   de   um   ano   para   outro,  fenômeno  que  ocorre  com  uma  duração   infinitesimal,  o  que   torna   impossível  a  presença   em  dois  Réveillons   distintos   em  um  mesmo   ano,  mesmo   se   fosse   em  casas  muito  próximas.  Felizmente,  existe  a  possibilidade  de  se  construir  circuitos  para  situações  semelhantes.  Nesse  caso,  empregaríamos  o  circuito  chamado  XOR,  que  significa  “OU  exclusivo”.  As  únicas  possibilidades  “aceitas”  seriam  “passar  o  Réveillon  na  casa  da  mãe  da  namorada”  ou  “passar  o  Réveillon  na  casa  da  mãe  do  namorado”  (figura  3).    

 Figura   3.   Porta   XOR   (Ou   exclusivo).   Diagrama   simplificado   (que   emprega  diagramas   de   circuitos   eletrônicos   já   mostrados   anteriormente),   símbolo   e  tabela  verdade.    

 Para  evitar  qualquer  ambiguidade  no  emprego  de  operações  lógicas,  

por  conta  de  uma  possível  falta  de  equivalência  entre  a  lógica  booleana  e  a  lógica  do  senso  comum,  recomenda-­‐se  a  consulta  da  tabela  verdade  das  operações.  Isso  é  especialmente   importante  quando  existem  operações  encadeadas  que  podem  resultar   em   absurdos   lógicos   mas   que   são   executados   normalmente   pelos  computadores  se  forem  mal  programados.  Para  ilustrar  esse  aspecto,  existe  uma  piada  que  circula  nos  meios  NERDs  mais  ou  menos  assim:  Uma  mulher,  casada  com  um  cientista  da  computação,  depois  do  trabalho  de  parto,  quando  o  obstetra  entrega  a  criança  para  o  marido,  pergunta:  “Meu  bem,  é  menino  ou  é  menina?”.  Ele  imediatamente  responde:  “Sim”.  

Na  figura  4  há  um  circuito  que  executa  uma  operação  aritmética,  de  soma,  que  é  bem  mais  complexa.  Os  circuitos  apresentados  fazem  operações  em  que   entram   dois   bits   e   a   saída   é   de   um   bit   (dois   no   caso   da   adição   se  considerarmos  a  informação  binária  “vai  um”).    

 Figura   4.   Esquema   mostrando   a   maneira   como   uma   soma   é   executada  eletronicamente,  usando  os  símbolos  correspondentes  aos  circuitos  da  figura  2.  Na   tabela   verdade   mostrada   abaixo,   considera-­‐se   a   entrada   “vai   um”   como  estando  sempre  em  0.      

As  operações  aqui  esquematizadas  na  forma  de  circuitos  eletrônicos  servem,  no  entanto,  somente  para  operações  de  um  bit  ou  de  um  par  de  bits.  Um  computador  que  processa   somente  um  bit   tem  muito  pouca  utilidade.  Para   ser  verdadeiramente  prático,  um  processador  deve  ser  capaz  de  processar  números  maiores  de  bits.    

Por  exemplo,  para  fazer  somas  com  números  de  até  4  bits  (de  0000  até  1111,  que  equivale,  em  decimal  a  8+4+2+1  =  15),  basta  encadear  4  circuitos  de  soma  como  aquele  mostrado  na  figura  4.  Isso  está  mostrado  na  figura  5.  

 

 Figura   5.   Circuito   que   pode   fazer   soma   de   números   de   até   4   bits.   Cada   caixa  equivale   a   um   circuito   como   aquele  mostrado   na   figura   4.   E   A,   E   B,   E   V1   são  Entrada  A,  Entrada  B  e  Entrada  “Vai  um”.  A  saída  “vai  1”  serve  para  se  verificar  se  houve  estouro  na  adição  (que  resultaria  em  um  número  maior  que  15).  

Os  primeiros  microcomputadores  comerciais  lançados  na  década  de  1980   possuíam   processadores   que   faziam   operações   com   8   bits.   Pouco   mais  tarde,   foram   produzidos   processadores   de   16   bits.   Atualmente,   embora   haja  muitos  computadores  que  possuam  processadores  de  32  bits,  a  tendência  atual  é  

que   se   estabilize   em   processadores   de   64   bits,   mas   isso   pode   mudar   com   o  tempo.    

Dentro  de  um  processador,  estão  todos  os  circuitos  necessários  para  se   fazer   processamento,   como   aqueles   que   já   vimos,   os   circuitos   lógicos   e   de  soma.   Além   desses   circuitos,   há   necessidade   de   outros,   como   para   outras  operações   lógicas,   aritméticas  e  de   controle  de   fluxo   (instruções  que  poderiam  ser   traduzidas   como   “Se   encontrar   essa   situação,   passe   a   fazer   tal   tarefa”,   ou  “execute   tantas  vezes  esse  conjunto  de   tarefas”,  ou   “execute  as   tarefas  a   seguir  até  que  uma  certa  condição  passe  a  ocorrer”).  Cada  instrução  corresponde  a  uma  combinação  de  circuitos  eletrônicos.    

A  quantidade  de  transístores  que  podem  ser  incluídos  em  um  único  circuito  eletrônico  tem  crescido  de  forma  acelerada.  Nos  fins  da  década  de  1980  esse   número   passou   de   1   milhão   de   componentes,   em   2010   ultrapassou   a  barreira  de  1  bilhão  e  continua  crescendo.  Entretanto  esse  número  cresce  agora  mais   pelo   incremento   do   número   de   núcleos   (processadores)   do   que   pelo  número   de   componentes   eletrônicos.   Um   processador   somente   pode   executar  uma   instrução   por   vez.   Como   os   processadores   atuais   são  muitíssimo   rápidos,  eles   executam   instruções   de   muitas   tarefas,   alternando-­‐as,   mas   dando   a  impressão   que   as   está   executando   simultaneamente.   No   entanto,   com  processadores  múltiplos  (multicore,  por  exemplo),  a  simultaneidade  de  execução  de  tarefas  passa  a  ser  real.  Entretanto,  para  que  os  programas  possam  fazer  uso  de  fato  dessa  crescente  capacidade  de  processamento  em  paralelo,  é  necessário  que   os   programas   de   computador   sejam   projetados   de   forma   adequada   para  usar  essa  capacidade,  ou  seja,   eles  precisam  ser   “paralelizados”.  Felizmente,  na  área   de   Bioinformática,   já   existem   diversos   programas   paralelizados,   ou   seja,  cujos   códigos   levam   em   conta   a   presença   de   vários   processadores   e   tiram  proveito  da  situação.    Memória  

A  memória   de   um   computador   eletrônico   digital   evidentemente   é  também   digital   e   pode   “armazenar”   temporária   ou   permanentemente   a  propriedade   de   transmitir   ou   não   a   corrente   elétrica.   Assim,   da  mesma   forma  que   o   processamento   pode   ser   constituído   de   um   circuito   com   transístores,   a  memória   também   pode   sê-­‐lo.   Do   ponto   de   vista   prático,   existem   dois   tipos   de  memória:   aquela   que   dura   apenas   enquanto   existe   corrente   elétrica   e   aquela  duradoura.   Do   ponto   de   vista   do   “hardware”,   existem   várias   maneiras   de  preservar   um   estado   (“deixa   passar   corrente”/”não   deixa”).   As   primeiras  memórias  eletrônicas  datam  da  década  de  1940  e  eram  constituídas  por  válvulas  eletrônicas.  Atualmente  as  memórias  são  baseadas  em  transistores.  A  memória  que   é   acessada  diretamente   é   conhecida   como  memória  RAM   (“random  access  memory”).   O   “random”,   embora   signifique   “aleatório”,   não   implica   que   a  memória  seja  sorteada  ao  acaso,  mas  que  pode  ser  acessada  diretamente  sem  ter  que  o  sistema  tenha  que  acessar  as  posições  anteriores,  por  contraposição  a  uma  memória  em  série,  que  ocorre,  por  exemplo  em  fitas  magnéticas.  Como  analogia,  podemos   pensar   em   acionar   um   canal   de   TV   com   o   seu   controle   remoto.   O  acionamento  da  tecla  (<canais>,  tecla  favorita  daqueles  que,  como  eu,  gostam  de  “zapear”)   faz  com  que  vejamos  canais  um  em  seguida  ao  outro,  até  acharmos  o  canal   que   desejamos.   Isso   é   equivalente   ao   acesso   a   uma   memória   em   série.  Usando   o   teclado   numérico   do   controle   remoto   da   TV,   entretanto,   podemos  

acionar  o  canal  que  desejamos  diretamente,  sem  que  tenhamos  que  passar  pelos  anteriores   ou   posteriores.   A   memória   RAM   tem   tido   um   crescimento   de  capacidade   exponencial,   mas   isso   não   significa   que   não   haja   limites.   Um   dos  limites  diz   respeito   ao  número  de  bits  de   endereço  disponível  no  processador.  Um   processador   com   memória   endereçável   de   16   bits   pode   acessar   216  endereços   diferentes   (65.536).   Com   32   bits,   esse   número   vai   a   232   =  4.294.967.296   endereços.   Com   64   bits,   podemos   ter   1,819   endereços   (~18  quintilhões).    

Cada  memória  tem,  como  característica,  um  tempo  que  leva  para  ser  acessada.  A  memória  acessada  mais  rapidamente  é  aquela  dos  registros  internos  do   processador,   mas   são   poucas   e   utilizadas   por   programadores.   A   seguir,  existem   os   níveis   de   memória   “cache”,   que   servem   para   armazenar  temporariamente  as  informações  que  foram  lidas  da  memória  RAM  e  levam  de  5  a  20  ns  para  que  o  processador  recupere  as   informações  nelas  armazenadas.  A  memória  RAM  leva  uns  70  ns.  Um  disco  rígido  muito  rápido   leva  de  9  a  15  ms,  umas  200  vezes  mais  lento  que  a  memória  RAM.    

 Velocidade  (“Clock”)  

A   velocidade   de   um   computador   pode   ser   medida   de   várias  maneiras,  sendo  que  a  mais  popular  delas  é  simplesmente  a  quantidade  de  ciclos  por   segundo   que   transita   pelo   processador.   A   corrente   em   um   processador  digital  não  flui  continuamente,  mas  em  “pequenos  pacotes”(que  não  têm  nada  a  ver   com  quanta,   o   plural   de  quantum,   relevante   em   computação   quântica,   que  não   será   abordada  nessa   edição).   Esses   pacotes,   ou  pulsos   de   eletricidade,   são  gerados   por   um   dispositivo   eletrônico   que   usa   a   propriedade   piezoelétrica   de  certos  materiais,  como  os  cristais  de  quartzo.  Quando  a  corrente  contínua  passa  por   um   cristal   com   certas   características,   a   corrente   passa   a   ter   um   formato  “quadrado”.  Atualmente,  os  computadores  mais  velozes  não  passam  muito  de  3  GHz,   ou   3   bilhões   de   ciclos   por   segundo.   Usando   a   tecnologia   atual,   existe   um  limite   teórico   de   10   GHz   por   causa   de   limitações   de   natureza   física.   Existe   a  prática   de   “overclock”   que   é   a   tentativa   de   aumentar   a   velocidade   de   um  computador  alterando  o  circuito  que  gera  os  pulsos.  Como  consequência  disso,  há  aumento  da  velocidade  da  máquina,  mas  há  também  aumento  na  produção  de  calor,  o  que  pode  arruinar  os  circuitos  eletrônicos  por  superaquecimento  ou  até  mesmo   por   derretimento.   Assim,   o   overclock   deve   ser   acompanhado   de  melhorias   na   refrigeração   do   sistema,   havendo   quem   use   refrigeração   com  líquidos  ou  até  mesmo  com  nitrogênio  líquido!    

 CPU  ou  UCP  

CPU   é   a   sigla   para   o   termo   em   inglês   “Central   Processing   Unit”,  unidade   central   de   processamento.   Aqui   no   Brasil,   CPU   tem   dois   significados  distintos.   Os   computadores   de  mesa   têm   sido   organizados   em  módulos,   sendo  que  um  dos  módulos  abriga  a  fonte  de  alimentação/transformador  de  corrente,  placa  de   circuito  principal,   alguns  dispositivos  de  memória   (RAM,  EPROM  com  BIOS,  etc.),  processador,  placas  de   interface  (em  série  e  em  paralelo),  placas  de  vídeo.  Esse  módulo,   ao  qual   se   conectam  o   teclado,  mouse  e  monitor  de  vídeo,  além  de  outros  periféricos,  é  chamado  de  CPU.  Outro  emprego  do  termo  “CPU”,  mais  universal,  corresponde  ao  próprio  processador.    

A  figura  6  mostra  a  organização  dos  elementos  de  um  computador  

 

 Figura  7.  Organização  dos  elementos  de  um  computador  (arquitetura),  vigente  desde  celulares  até  computadores  centrais  de  bancos  multinacionais.      Sistema  Operacional  

Podemos   dizer   que   o   sistema   operacional   é   um   programa   que  gerencia  a  maneira  como  os  demais  programas  do  computador  irão  atuar,  além  de   direcionar   a   maneira   como   os   dados   serão   organizados   fisicamente   nos  dispositivos  de  memória.  Embora  a  forma  como  toda  informação  é  armazenada  é  sempre   sob   a   forma   de   zeros   e   uns,   o   sistema   operacional   será,   entre   outras  tarefas,  encarregado  de  fazer  a  correspondência  entre  aquilo  armazenado  e  o  seu  significado.   A   informação   é   normalmente   agrupada   na   unidade   lógica   que   é  conhecida   como   arquivo.   Um   arquivo   pode   corresponder,   por   exemplo,   a   um  texto   simples,   um  documento,   um   conjunto  de   sequências  de  nucleotídeos,   um  programa  de  computador,  uma  figura,  um  filme,  uma  estrutura  tridimensional  de  uma  macromolécula,  etc.  

Os   arquivos   podem   ser   definidos   portanto   como   um   conjunto   de  zeros   e   uns   que   têm   um   determinado   significado.   Existem   tipos   de   arquivo  padronizados.   Há   sistemas   operacionais   que   exigem   que   os   tipos   de   arquivos  sejam   explicitados.   Por   exemplo,   se   o   nome   de   um   determinado   arquivo   é  “tarefa1.txt”,   os   sistemas   operacionais   que   “descendem”   do   sistema   CP/M  entenderão  que  o  arquivo  trata-­‐se  de  um  texto  por  causa  do  sufixo  “.txt”.  Nesse  caso,   o   programa   que   processará   esse   arquivo   (ou   o   sistema   operacional)   irá  agrupar  os  bits  em  grupos  de  8  ou  16  e  interpretá-­‐los  de  acordo  com  um  código,  que  poderá  ser  o  ASCII  (veja  apêndice)  ou  UNICODE.  

 Tabela  1.  Sufixos  de  arquivos  comuns  e  significados  

Sufixo   Descrição   Programas  que  abrem  esses  arquivos  

.jpg   Figuras     Navegador  padrão  ou  editor  gráfico    .gif   Figuras     Navegador  padrão  ou  editor  gráfico  .bmp   Figuras     Paint  (Windows)  ou  editor  gráfico  .doc   Documentos  de  

editores  de  texto    Wordpad,  Word    

.txt   Arquivo  de  texto     Notepad  ,  editores  de  texto    .pdf   “Portable  

document  file”    Acrobat  Reader  (Adobe)  

.htm,  

.html  Páginas  da  rede   Navegadores,  pode  ser  editado  com  

editor  de  texto  .wav   Som     Programas  de  som,  mídia    .avi   Video     Programas  de  som,  mídia  .rm   Video     RealPlayer    .dll   “Dynamic  link  

library”    Arquivos  de  bibliotecas  de  funções  usados  por  programas    

.exe   Arquivo  executável     Sistema  operacional    .zip   Arquivo  

comprimido    WinZip,  PKZip,  etc.  ou  pelo  próprio  sistema  operacional  

Para  uma  lista  mais  completa,  consulte  http://www.fileinfo.com      Internamente,  onde  quer  que  esteja  armazenado,  pode  acontecer  (e  

acontece  muitas   vezes),   um   arquivo   não   fica   armazenado   sob   a   forma   de   uma  série   contínua   de   zeros   e   uns.   Se   um   arquivo   está   armazenado   em   um   disco  rígido,   ele   pode   estar   totalmente   “esquartejado”,   ou   seja,   dividido   em   pedaços  espalhados  pelo  disco.  O  sistema  operacional  é  o  programa  que  fica  encarregado  da   tarefa   de   fazer   a   associação   do   atributo   lógico   de   um   arquivo   (que,   para   o  usuário,   é   sempre   uma   única   sequência   contínua   de   zeros   e   uns)   e   o   seu  armazenamento  físico,  que  é  feito  por  meio  de  “setores”  (veja  a  figura  7).    

 Figura   7.   Um   setor   pode   ser   localizado   da   mesma   maneira   que   se   localizam  células   em   uma   matriz.   No   caso   de   um   HD   com   múltiplos   discos,   temos   três  dimensões   de   endereço,   o   disco,   a   fatia   e   a   trilha.   Assim   o   setor   (1,4,7)  corresponde  ao  disco  1,  fatia  4  e  trilha  7).  

 Conforme   o   sistema   operacional,   ou   sua   versão,   é   estabelecida   a  

quantidade   de   informação   que   corresponde   a   cada   grupo   de   alocação  (quantidade   de   setores)   e   como   a   informação   da   correspondência   entre   o  arquivo   lógico  e  os  setores  correspondentes  é  armazenada.  Os  arquivos  podem  ficar   bastante   fragmentados   se   eles   passaram  por  muitos   processos   de   edição,  como   adição   de   trechos,  modificação   de   outros,   eliminação   de   partes,   etc.   Por  exemplo,  se  um  texto  longo  está  sendo  editado  intermitentemente,  é  normal  que  o   arquivo   correspondente   ao   texto   fique   fragmentado.   Isso   normalmente   não  causa   problemas,   mas   o   acesso   ao   arquivo   pode   ficar   um   pouco   mais   lento.  Existem  programas  que  fazem  desfragmentação  de  arquivos.  

 BIOS  

BIOS  é  a  sigla  para  “Basic   Input/Output  System”,  sistema  básico  de  entrada/saída,   em   português.   Trata-­‐se   de   um   programa   que   irá   informar,   ao  sistema   operacional,   quais   os   dispositivos   de   hardware   mais   básicos   estão  presentes,   e   qual   é   a   configuração   deles.   Esse   programa   normalmente   fica  gravado   em   uma   memória   permanente   tipo   EPROM,   que   é     a   abreviatura   de  “erasable/programmable   read   only   memory”,   que   pode   ser   traduzido   como  “memória  programável/apagável  somente  de   leitura”.  Quando  instalada  em  um  computador,   o   conteúdo   de   um   EPROM   pode   ser   lido,   mas   consta   que   é  programável  e  apagável  desde  que  se  remova  um  lacre  e  o  submeta    o  circuito  a  uma   luz   ultravioleta   adequada.   Como   esse   é   um  procedimento   que   faz   sentido  

somente  numa  situação  de   reparo  ou  de   reconfiguração  de  hardware,   fica   essa  informação  aqui  somente  a  título  de  registro.  

Na   BIOS,   existem   procedimentos   que   são   executados   assim   que   o  computador  é   ligado.  Eles  são  chamados  de  procedimentos  de  “Boot”.  Não,  não  se  origina  do  movimento  de  uma  bota  que   é  necessário  para  dar   a  partida   em  certas  motocicletas,   especialmente   as  de   antigamente.  Origina-­‐se  da   frase   “pull  himself  by  pulling  his  bootstratps”,  que  significa  mais  ou  menos  como  “sustenta-­‐se   pelos   próprios   meios”.   Assim,   o   início   automático   de   um   computador   era  chamado   de   “bootstraping”   que   foi   abreviado   depois   para   “boot”.   Esses  procedimentos   servem,   por   exemplo,   para   informar   o   computador   onde   fica  armazenado  fisicamente  o  sistema  operacional.  Durante  o  próprio  procedimento  de   inicialização  do  computador  os  parâmetros  da  BIOS  podem  ser  modificados,  como   por   exemplo   para   se   usar   outro   sistema   operacional   que   se   encontra  armazenado  em  um  pendrive  (dispositivo  portátil  de  memória  permantente).  

       

 

Apêndice.    

Tabela ASCII (American Standard Code for Information Interchange )

127 primeiros caracteres

Dec Hex Significado

0 00 Null - NUL

1 01 Start of Heading - SOH

2 02 Start of Text - STX

3 03 End of Text - ETX

4 04 End of Transmission - EOT

5 05 Enquiry - ENQ

6 06 Acknowledge - ACK

7 07 Bell, rings terminal bell - BEL

8 08 BackSpace - BS

9 09 Horizontal Tab - HT

10 0A Line Feed - LF

11 0B Vertical Tab - VT

12 0C Form Feed - FF

13 0D Carriage  Return - CR

14 0E Shift-Out - SO

15 0F Shift-In - SI

16 10 Data Link Escape - DLE

17 11 Device Control 1 - D1

18 12 Device Control 2 - D2

19 13 Device Control 3 - D3

20 14 Device Control 4 - D4

21 15 Negative Acknowledge - NAK

22 16 Synchronous idle - SYN

23 17 End Transmission Block - ETB

24 18 Cancel line - CAN

25 19 End of Medium - EM

26 1A Substitute - SUB

27 1B Escape - ESC

28 1C File Separator - FS

29 1D Group Separator - GS

30 1E Record Separator - RS

31 1F Unit Separator - US

32 20 Space - SPC

33 21 !

34 22 "

35 23 #

36 24 $

37 25 %

38 26 &

39 27 '

40 28 (

41 29 )

42 2A *

43 2B +

44 2C ,

45 2D -

46 2E .

47 2F /

48 30 0

49 31 1

50 32 2

51 33 3

52 34 4

53 35 5

54 36 6

55 37 7

56 38 8

57 39 9

58 3A :

59 3B ;

60 3C <

61 3D =

62 3E >

63 3F ?

64 40 @

65 41 A

66 42 B

67 43 C

68 44 D

69 45 E

70 46 F

71 47 G

72 48 H

73 49 I

74 4A J

75 4B K

76 4C L

77 4D M

78 4E N

79 4F O

80 50 P

81 51 Q

82 52 R

83 53 S

84 54 T

85 55 U

86 56 V

87 57 W

88 58 X

89 59 Y

90 5A Z

91 5B [

92 5C \

93 5D ]

94 5E ^

95 5F _

96 60 `

97 61 a

98 62 b

99 63 c

100 64 d

101 65 e

102 66 f

103 67 g

104 68 h

105 69 i

106 6A j

107 6B k

108 6C l

109 6D m

110 6E n

111 6F o

112 70 p

113 71 q

114 72 r

115 73 s

116 74 t

117 75 u

118 76 v

119 77 w

120 78 x

121 79 y

122 7A z

123 7B {

124 7C |

125 7D }

126 7E ~

127 7F Delete