{"id":1992,"date":"2020-04-20T14:24:38","date_gmt":"2020-04-20T17:24:38","guid":{"rendered":"https:\/\/www.blogs.unicamp.br\/zero\/?p=1992"},"modified":"2023-08-25T16:24:32","modified_gmt":"2023-08-25T19:24:32","slug":"bichos-de-xn-cabecas-parte-3-5","status":"publish","type":"post","link":"https:\/\/www.blogs.unicamp.br\/zero\/1992\/","title":{"rendered":"Bichos de X^n cabe\u00e7as (parte 3\/5)"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"1992\" class=\"elementor elementor-1992\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-a0ed699 elementor-section-boxed elementor-section-height-default elementor-section-height-default jltma-glass-effect-no\" data-id=\"a0ed699\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-78be4a5 jltma-glass-effect-no\" data-id=\"78be4a5\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a998abe jltma-glass-effect-no elementor-widget elementor-widget-heading\" data-id=\"a998abe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/www.blogs.unicamp.br\/zero\/2020\/04\/20\/creatures-of-xn-heads-part-3-5\/\">(Translate)<\/a><\/h4>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fe653da jltma-glass-effect-no elementor-widget elementor-widget-heading\" data-id=\"fe653da\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/www.blogs.unicamp.br\/zero\/2020\/04\/20\/bichos-de-xn-cabecas-parte-2-5\/\">Bichos de X^n cabe\u00e7as (parte 2\/5)<\/a><\/h4>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5e8e318 elementor-section-boxed elementor-section-height-default elementor-section-height-default jltma-glass-effect-no\" data-id=\"5e8e318\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c6b0f59 jltma-glass-effect-no\" data-id=\"c6b0f59\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-22f22a7 jltma-glass-effect-no elementor-widget elementor-widget-text-editor\" data-id=\"22f22a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p align=\"center\"><b>Bit, o bicho de 2<sup>1<\/sup> cabe\u00e7as<\/b><\/p>\n<p align=\"justify\">Na computa\u00e7\u00e3o o (0 ou 1) \u00e9 chamado de bit. Podemos considerar os bits como as menores unidades da mat\u00e9ria dentro de um computador. De modo an\u00e1logo \u00e0 ideia grega de \u00e1tomos, o bit \u00e9 indivis\u00edvel. Ele \u00e9 algo que pode ser representado fisicamente como um circuito el\u00e9trico aberto ou fechado. No caso, relacionando-o com as vari\u00e1veis booleanas, quando aberto tem o valor Falso e quando fechado tem o valor Verdadeiro.<\/p>\n<p align=\"justify\">Para o computador, \u00e9 mais f\u00e1cil representar dois s\u00edmbolos do que dez s\u00edmbolos. Dois s\u00edmbolos podem ser representados por um circuito aberto, no qual a energia \u00e9 interrompida ou o circuito est\u00e1 fechado, no qual a energia passa. Em computa\u00e7\u00e3o tratamos tal situa\u00e7\u00e3o como falsa por 0 e verdadeira por 1. N\u00e3o \u00e9 poss\u00edvel assumir os dois estados simultaneamente. Assim, ou o bit est\u00e1 em 0 ou est\u00e1 em 1.<\/p>\n<p align=\"justify\">Observe no desenho da M\u00e1quina de Turing Universal no primeiro post deste especial, a fita de zeros e uns. O que aquela sequ\u00eancia de zeros e uns representa? Este \u00e9 o cerne da quest\u00e3o. Voc\u00ea est\u00e1 lendo esse texto nesse exato momento, provavelmente observa cada s\u00edmbolo (letra), percebe a uni\u00e3o ou agrupamento das letras em palavras, separa cada palavra, interpreta cada palavra e vai para a direita at\u00e9 o fim da linha, mas de fato, um texto \u00e9 uma conven\u00e7\u00e3o. A disposi\u00e7\u00e3o das palavras, os tipos de palavras, tudo \u00e9 uma conven\u00e7\u00e3o para que voc\u00ea possa \u201cdar chance\u201d ao seu c\u00e9rebro atribuir um significado. Uma sequ\u00eancia de texto como \u201cadsdasds ererere gggffdgfdgd errtrtrtr dgfdgdfgfd gfdgfhgfhfghgf cccxcvxvxccv\u201d, embora siga algumas regras como uso de s\u00edmbolos do alfabeto e espa\u00e7o em branco como separador, n\u00e3o quer dizer nada. N\u00e3o h\u00e1 significado para n\u00f3s como leitores.<\/p>\n<p align=\"justify\">De maneira an\u00e1loga, a linguagem que o computador recebe \u00e9 similar \u00e0s sequ\u00eancias de bit abaixo:<\/p>\n<p align=\"center\">0110000101110000011100100110010101101110011001000110010101110010<\/p>\n<p align=\"center\">01100101011011100111001101101001011011100110000101110010<\/p>\n<p align=\"center\">011001010110010001110101011000110110000101110010<\/p>\n<p align=\"justify\">Deve haver uma conven\u00e7\u00e3o (uma regra) de como isto deve ser interpretado. O que ser\u00e1 discutido na se\u00e7\u00e3o seguinte.<\/p>\n<p align=\"center\"><b>Byte, o bicho de 2<sup>8<\/sup> cabe\u00e7as<\/b><\/p>\n<p align=\"justify\">J\u00e1 ouvimos em v\u00e1rias ocasi\u00f5es o discurso sobre o bicho de 2\u00b9 cabe\u00e7as (o bit), por\u00e9m realmente n\u00e3o o vemos quando usamos os computadores. Ainda que exista todo este encanto sobre os benditos 0\u2019s e 1\u2019s do computador, estes n\u00e3o s\u00e3o vis\u00edveis para a maioria de n\u00f3s (pode at\u00e9 ser vis\u00edvel para alguns loucos por computa\u00e7\u00e3o). Por outro lado, existe um bicho um pouco mais complexo com o qual j\u00e1 \u00e9 poss\u00edvel trabalhar diretamente em seu formato na m\u00e1quina. O bicho de 2\u2078 cabe\u00e7as, conhecido na computa\u00e7\u00e3o como byte.<\/p>\n<p align=\"justify\">A sequ\u00eancia de 0\u2019s e 1\u2019s mostrada no final da \u00faltima se\u00e7\u00e3o, para voc\u00ea n\u00e3o representava nada, voc\u00ea n\u00e3o percebe uma regra de forma\u00e7\u00e3o ou ordem, absolutamente s\u00e3o apenas n\u00fameros. Entretanto para o computador, tal sequ\u00eancia tem \u201csignificado\u201d, basta haver uma conven\u00e7\u00e3o ou regra sobre a escrita do c\u00f3digo na sequ\u00eancia acima. Poder\u00edamos come\u00e7ar agrupando e separando os bits em grupos de 8 bits para formar bytes.<\/p>\n<p align=\"center\"><b>01100001<\/b> <i>01110000<\/i> <b>01110010<\/b> <i>01100101<\/i> <b>01101110<\/b> <i>01100100<\/i> <b>01100101<\/b> <i>01110010<\/i><\/p>\n<p align=\"center\"><b>01100101<\/b> <i>01101110<\/i> <b>01110011<\/b> <i>01101001<\/i> <b>01101110<\/b> <i>01100001<\/i> <b>01110010<\/b><\/p>\n<p align=\"center\"><b>01100101<\/b> <i>01100100<\/i> <b>01110101<\/b> <i>01100011<\/i> <b>01100001<\/b> <i>01110010<\/i><\/p>\n<p align=\"justify\">Cada byte pode ser lido pelo computador com o aux\u00edlio do c\u00f3digo ASCII (n\u00e3o se preocupe, falaremos sobre isto um pouco mais a frente no texto), como um caractere espec\u00edfico. A mensagem decodificada para um ser humano seria:<\/p>\n<p align=\"center\"><b>aprender<\/b><\/p>\n<p align=\"center\"><b>ensinar<\/b><\/p>\n<p align=\"center\"><b>educar<\/b><\/p>\n<p align=\"justify\">De maneira an\u00e1loga ao bit como sendo um interruptor el\u00e9trico, o byte pode ser percebido como 8 interruptores el\u00e9tricos ligados em paralelo. Contudo, enquanto o bit somente podia representar duas op\u00e7\u00f5es (0 ou 1), o byte pode representar at\u00e9 256 op\u00e7\u00f5es.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-def27c3 jltma-glass-effect-no elementor-widget elementor-widget-image\" data-id=\"def27c3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"395\" height=\"174\" src=\"https:\/\/www.blogs.unicamp.br\/zero\/wp-content\/uploads\/sites\/187\/2020\/04\/byte.jpg\" class=\"attachment-large size-large wp-image-2015 no-lazy\" alt=\"\" srcset=\"https:\/\/www.blogs.unicamp.br\/zero\/wp-content\/uploads\/sites\/187\/2020\/04\/byte.jpg 395w, https:\/\/www.blogs.unicamp.br\/zero\/wp-content\/uploads\/sites\/187\/2020\/04\/byte-300x132.jpg 300w\" sizes=\"(max-width: 395px) 100vw, 395px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-921a2ec jltma-glass-effect-no elementor-widget elementor-widget-text-editor\" data-id=\"921a2ec\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p align=\"center\">Exemplo de circuito para um byte.<\/p><p align=\"justify\">Na figura acima, apesar de termos cores diferentes para as l\u00e2mpadas, o que nos importa \u00e9 que cada uma das 8 pode estar acesa ou apagada (no caso da figura acima, todas est\u00e3o apagadas pois seus interruptores est\u00e3o em aberto). Mas com isto, h\u00e1 256 maneiras de representar estas 8 l\u00e2mpadas como acesas ou apagadas. Podemos dizer que a l\u00e2mpada apagada seja 0 e acesa seja 1. Assim, da esquerda para a direita temos:<\/p><table width=\"408\" cellspacing=\"0\" cellpadding=\"4\"><colgroup> <col width=\"121\" \/> <col width=\"271\" \/> <\/colgroup><tbody><tr valign=\"top\"><td width=\"121\"><p><i>00000000<br \/>10000000<br \/>\u2026<br \/>11111111<\/i><\/p><\/td><td width=\"271\"><p align=\"left\"><i>nenhuma l\u00e2mpada est\u00e1 acesa<br \/>somente a primeira est\u00e1 acesa<br \/>\u2026<br \/>todas as l\u00e2mpadas est\u00e3o acesas<\/i><\/p><\/td><\/tr><\/tbody><\/table><p align=\"justify\">Lembrando um pouco de an\u00e1lise combinat\u00f3ria:<\/p><p align=\"justify\"><b>1.<\/b> Para uma fase com 2 op\u00e7\u00f5es, temos 2 formas de ocup\u00e1-la, ou seja, 2<sup>1<\/sup>.<\/p><p align=\"justify\"><b>2.<\/b> Para duas fases com 2 op\u00e7\u00f5es, temos 2 formas de ocupar a primeira, e para cada escolha tomada, temos mais duas formas de ocupar a segunda fase. Assim, temos 2(2\u00b9) possibilidades, ou seja, 2\u00b2.<\/p><p align=\"justify\"><b>3.<\/b> De modo an\u00e1logo, para tr\u00eas fases com 2 op\u00e7\u00f5es, temos 2 formas de ocupar a primeira, e para cada escolha tomada, temos 2\u00b2 formas de ocupar as outras duas fases. Assim, temos 2(2\u00b2) possibilidades, ou seja, 2\u00b3.<\/p><p align=\"justify\"><b>4.<\/b> Para um n\u00famero n de fases com 2 op\u00e7\u00f5es, temos 2 formas de ocupar a primeira fase, e para cada escolha tomada, temos 2<sup>n-1<\/sup> formas de ocupar as outras n-1 fases. Assim, temos 2(2<sup>(n-1)<\/sup>) possibilidades, ou seja, 2<sup>n<\/sup>.<\/p><p align=\"justify\">No caso dos bytes, temos 8 fases poss\u00edveis de serem ocupadas com 2 op\u00e7\u00f5es cada, o que d\u00e1 2\u2078 possibilidades, ou seja, 256. Um exemplo pr\u00e1tico do uso destes n\u00fameros \u00e9 o sistema de cores utilizado pelo computador. Muitos sistemas utilizam o formato RGB, referente \u00e0 Red (tradu\u00e7\u00e3o do ingl\u00eas: Vermelho), Green (tradu\u00e7\u00e3o do ingl\u00eas: Verde) e Blue (tradu\u00e7\u00e3o do ingl\u00eas: Azul). Para cada vari\u00e1vel R, G, B h\u00e1 o espa\u00e7o para um byte. Cada byte representa uma intensidade de R, G ou B. Sendo representada como {0,0,0} e {255,255,255} as cores extremas (preto e branco respectivamente).<\/p><p align=\"justify\">\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a57eaee jltma-glass-effect-no elementor-widget elementor-widget-heading\" data-id=\"a57eaee\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/www.blogs.unicamp.br\/zero\/2020\/04\/20\/bichos-de-xn-cabecas-parte-4-5\/\">Bichos de X^n cabe\u00e7as (parte 4\/5)<\/a><\/h4>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-56df657 jltma-glass-effect-no elementor-widget elementor-widget-heading\" data-id=\"56df657\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/www.blogs.unicamp.br\/zero\/\">Voltar para p\u00e1gina principal<\/a><\/h4>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1ab3db4 jltma-glass-effect-no elementor-widget elementor-widget-heading\" data-id=\"1ab3db4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/www.blogs.unicamp.br\/zero\/quem-escreve-os-posts\/\">Quem escreve os posts?<\/a><\/h4>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Bit e Byte, como podemos enxergar estas unidades? O que s\u00e3o e porque podem representar tantas coisas?<\/p>\n","protected":false},"author":434,"featured_media":2006,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"editor_plus_copied_stylings":"{}","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"pgc_sgb_lightbox_settings":"","_vp_format_video_url":"","_vp_image_focal_point":[],"footnotes":""},"categories":[1210],"tags":[],"class_list":["post-1992","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-v-3-ed-1"],"_links":{"self":[{"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/posts\/1992","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/users\/434"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/comments?post=1992"}],"version-history":[{"count":17,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/posts\/1992\/revisions"}],"predecessor-version":[{"id":5249,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/posts\/1992\/revisions\/5249"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/media\/2006"}],"wp:attachment":[{"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/media?parent=1992"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/categories?post=1992"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/tags?post=1992"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}