Assembly (1)
16 pág.

Assembly (1)


DisciplinaOrganização de Computadores6.413 materiais120.315 seguidores
Pré-visualização5 páginas
mais comuns unidades de entrada sÆo o teclado e o mouse. As mais 
comuns unidades de sa¡da sÆo a tela do monitor e a impressora. 
 
 
2.1.4.Unidades de Mem¢ria Auxiliar. 
 
Considerando o alto custo da mem¢ria principal e tamb\u201am o tamanho das 
aplica\u2021äes atualmente, vemos que ela \u201a muito limitada. Logo, surgiu a 
necessidade da cria\u2021Æo de dispositivos de armazenamento pr ticos e 
econ\u201cmicos. 
 
Estes e outros inconvenientes deram lugar \u2026s unidades de mem¢ria auxiliar, 
perif\u201aricos. As mais comuns sÆo as fitas e os discos magn\u201aticos. 
 
A informa\u2021Æo ali armazenada ser dividida em arquivos. Um arquivo \u201a feito de 
um n£mero vari vel de registros, geralmente de tamanho fixo, podendo conter 
informa\u2021Æo ou programas. 
 
 
 --------------- // --------------- 
 
2.2.CONCEITOS BµSICOS 
 
Conte£do: 
 
2.2.1.Informa\u2021äes nos computadores 
2.2.2.M\u201atodos de representa\u2021Æo de dados 
 
 
2.2.1.Informa\u2021Æo no computador: 
 
 2.2.1.1.Unidades de informa\u2021Æo 
 2.2.1.2.Sistemas num\u201aricos 
 2.2.1.3.Convertendo n£meros bin rios para decimais 
 2.2.1.4.Convertendo n£meros decimais para bin rios 
 2.2.1.5.Sistema hexadecimal 
 
 
 
2.2.1.1.Unidades de informa\u2021Æo 
 
Para o PC processar a informa\u2021Æo, \u201a necess rio que ela esteja em c\u201alulas 
especiais, chamadas registradores. 
 
Os registradores sÆo grupos de 8 ou 16 flip-flops. 
 
Um flip-flop \u201a um dispositivo capaz de armazenar 2 n¡veis de voltagem, um 
baixo, geralmente 0.5 volts, e outro comumente de 5 volts. O n¡vel baixo de 
energia no flip-flop \u201a interpretado como desligado ou 0, e o n¡vel alto, 
como ligado ou 1. Estes estados sÆo geralmente conhecidos como bits, que sÆo 
a menor unidade de informa\u2021Æo num computador. 
 
Um grupo de 16 bits \u201a conhecido como palavra; uma palavra pode ser dividida 
em grupos de 8 bits chamados bytes, e grupos de 4 bits chamados nibbles. 
 
 
 
2.2.1.2.Sistemas num\u201aricos 
 
Page 4 of 16
21/7/2009http://www.b4silisco.com/ASMPOR.TXT
O sistema num\u201arico que n¢s usamos diariamente \u201a o decimal, mas este sistema 
nÆo \u201a conveniente para m quinas, pois ali as informa\u2021äes t\u2c6m que ser 
codificadas de modo a interpretar os estados da corrente (ligado-desligado); 
este modo de c¢digo faz com que tenhamos que conhecer o c lculo posicional 
que nos permitir expressar um n£mero em qualquer base onde precisarmos 
dele. 
 
\ufffd poss¡vel representar um determinado n£mero em qualquer base atrav\u201as da 
seguinte f¢rmula: 
 
 
Onde n \u201a a posi\u2021Æo do d¡gito, iniciando da direita para a esquerda e 
numerando de 0. D \u201a o d¡gito sobre o qual n¢s operamos e B \u201a a base num\u201arica 
usada. 
 
 
2.2.1.3.Convertendo n£meros bin rios para decimais 
 
Quando trabalhamos com a Linguagem Assembly encontramos por acaso a 
necessidade de converter n£meros de um sistema bin rio, que \u201a usado em 
computadores, para o sistema decimal usado pelas pessoas. 
 
O sistema bin rio \u201a baseado em apenas duas condi\u2021äes ou estados, estar 
ligado(1), ou desligado(0), portanto sua base \u201a dois. 
 
Para a conversÆo, podemos usar a f¢rmula de valor posicional: 
 
Por exemplo, se tivermos o n£mero bin rio 10011, tomamos cada d¡gito da 
direita para a esquerda e o multiplicamos pela base, elevando \u2026 pot\u2c6ncia 
correspondente \u2026 sua posi\u2021Æo relativa: 
 
Binary: 1 1 0 0 1 
 
Decimal: 1*2^0 + 1*2^1 + 0*2^2 + 0*2^3 + 1*2^4 
 
 = 1 + 2 + 0 + 0 + 16 = 19 decimal. 
 
O caracter ^ \u201a usado em computa\u2021Æo como s¡mbolo para pot\u2c6ncia e * para a 
multiplica\u2021Æo. 
 
 
2.2.1.4.Convertendo n£meros decimais para bin rio 
 
H v rios m\u201atodos para se converter n£meros decimais para bin rio; apenas um 
ser analizado aqui. Naturalmente a conversÆo com uma calculadora cient¡fica 
\u201a muito mais f cil, mas nem sempre podemos contar com isso, logo o mais 
conveniente \u201a, ao menos, sabermos uma f¢rmula para faz\u2c6-la. 
 
O m\u201atodo resume-se na aplica\u2021Æo de divisäes sucessivas por 2, mantendo o 
resto como o d¡gito bin rio e o resultado como o pr¢ximo n£mero a ser 
dividido. 
 
Tomemos como exemplo o n£mero decimal 43. 
 
43/2=21 e o resto \u201a 1; 21/2=10 e o resto \u201a 1; 10/2=5 e o resto \u201a 0; 
5/2=2 e o resto \u201a 1; 2/2=1 e o resto \u201a 0; 1/2=0 e o resto \u201a 1. 
 
Para construir o equivalente bin rio de 43, vamos pegar os restos obtidos de 
baixo para cima, assim temos 101011. 
 
 
2.2.1.5.Sistema hexadecimal 
 
Na base hexadecimal temos 16 d¡gitos, que vÆo de 0 a 9 e da letra A at\u201a a F, 
Page 5 of 16
21/7/2009http://www.b4silisco.com/ASMPOR.TXT
estas letras representam os n£meros de 10 a 15. Portanto contamos: 
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E, e F. 
 
A conversÆo entre n£meros bin rios e hexadecimais \u201a f cil. A primeira coisa 
a fazer \u201a dividir o n£mero bin rio em grupos de 4 bits, come\u2021ando da direita 
para a esquerda. Se no grupo mais \u2026 direita sobrarem d¡gitos, completamos 
com zeros. 
 
Tomando como exemplo o n£mero bin rio 101011, vamos dividi-lo em grupos de 4 
bits: 
 
10;1011 
 
Preenchendo o £ltimo grupo com zeros (o um mais \u2026 esquerda): 
 
0010;1011 
 
A seguir, tomamos cada grupo como um n£mero independente e consideramos o 
seu valor decimal: 
 
0010=2;1011=11 
 
Entretanto, observa-se que nÆo podemos representar este n£mero como 211, 
isto seria um erro, uma vez que os n£meros em hexa maiores que 9 e menores 
que 16 sÆo representados pelas letras A,B,...,F. Logo, obtemos como 
resultado: 
 
2Bh, onde o "h" representa a base hexadecimal. 
 
Para a conversÆo de um n£mero hexadecimal em bin rio \u201a apenas necess rio 
inverter os passos: tomamos o primeiro d¡gito hexadecimal e o convertemos 
para bin rio, a seguir o segundo, e assim por diante. 
 
 
 --------------- // --------------- 
 
 
2.2.2.M\u201atodos de representa\u2021Æo de dados num computador. 
 
 2.2.2.1.C¢digo ASCII 
 2.2.2.2.M\u201atodo BCD 
 2.2.2.3.Representa\u2021Æo de ponto flutuante 
 
 
 
2.2.2.1.C¢digo ASCII 
 
ASCII significa American Standard Code for Information Interchange. Este 
c¢digo cont\u201am as letras do alfabeto, d¡gitos decimais de 0 a 9 e alguns 
s¡mbolos adicionais como um n£mero bin rio de 7 bits, tendo o oitavo bit em 
0, ou seja, desligado. 
 
Deste modo, cada letra, d¡gito ou caracter especial ocupa 1 byte na mem¢ria 
do computador. 
 
Podemos observar que este m\u201atodo de representa\u2021Æo de dados \u201a muito 
ineficiente no aspecto num\u201arico, uma vez que no formato bin rio 1 byte nÆo \u201a 
suficiente para representar n£meros de 0 a 255, com o ASCII podemos 
representar apenas um d¡gito. 
 
Devido a esta inefici\u2c6ncia, o c¢digo ASCII \u201a usado, principalmente, para a 
representa\u2021Æo de textos. 
 
 
Page 6 of 16
21/7/2009http://www.b4silisco.com/ASMPOR.TXT
 
2.2.2.2.M\u201atodo BCD 
 
BCD significa Binary Coded Decimal. 
 
Neste m\u201atodo grupos de 4 bits sÆo usados para representar cada d¡gito 
decimal de 0 a 9. Com este m\u201atodo podemos representar 2 d¡gitos por byte de 
informa\u2021Æo. 
 
Vemos que este m\u201atodo vem a ser muito mais pr tico para representa\u2021Æo 
num\u201arica do que o c¢digo ASCII. Embora ainda menos pr tico do que o bin rio, 
com o m\u201atodo BCD podemos representar d¡gitos de 0 a 99. Com o bin rio, vemos 
que o alcance \u201a maior, de 0 a 255. 
 
Este formato (BCD) \u201a principalmente usado na representa\u2021Æo de n£meros 
grandes, aplica\u2021äes comerciais, devido \u2026s suas facilidades de opera\u2021Æo. 
 
 
2.2.2.3.Representa\u2021Æo de ponto flutuante 
 
Esta representa\u2021Æo \u201a baseada em nota\u2021Æo cient¡fica, isto \u201a, representar um 
n£mero em 2 partes: sua base e seu expoente. 
 
Por exemplo o n£mero decimal 1234000, \u201a representado como 1.234*10^6, 
observamos que o expoente ir indicar o n£mero de casas que o ponto decimal 
deve ser movido para a direita, a fim de obtermos o n£mero original. 
 
O expoente negativo, por outro lado, indica