Linguagem Perl - Loops e Saltos
Perl+CGI - Um script de verdade
2775 registros
4 hoje
14 nesta semana
55 neste mês| 88,2% | | Brasil |
| 9,2% | | Portugal |
| 0,8% | | EUA |
| 0,2% | | Espanha |
| 0,1% | | Alemanha |
| Hoje: | 437 |
| Ontem: | 1831 |
| Esta semana: | 8757 |
| Semana passada: | 13257 |
| Este mês: | 38498 |
| Mês passado: | 49141 |
| Total: | 104218 |
|
Sex 23 Fev 2007 11:06 |
|
|
Se tivermos registradores, contadores e registradores de deslocamento, podemos construir máquinas de estado. A implementação de um É claro que é muito mais difícil elaborar uma solução para um problema de programação utilizando equações booleanas do que usando linguagens como C, Pascal ou até mesmo a linguagem Assembly. Exatamente por este motivo não é razoável implementar um programa inteiro utilizando um conjunto de máquinas de estado e outros sistemas de circuitos eletrônicos. Todavia, há ocasiões em que a implementação em hardware é melhor, isto porque uma solução em hardware pode ser muitíssimo mais rápida do que uma solução equivalente em software. É por isto que, em algumas situações, operações de tempo crítico requerem uma solução em hardware. Um fato ainda mais interessante é que o oposto da afirmação acima também é verdade. Podemos não só implementar todas as funções de software em hardware, como também podemos implementar todas as funções de hardware em software. Esta é uma revelação importante porque muitas operações que normalmente seriam implementadas em hardware são muito mais baratas de implementar utilizando software num microprocessador. Na realidade, este é o uso primário da linguagem Assembly nos sistemas modernos - para substituir, a custo zero, um circuito eletrônico complexo. Frequentemente é possível fazer muita economia substituindo componentes eletrônicos caríssimos por um simples chip microcomputador muito barato. Sistemas embutidos são sistemas de computador embutidos em outros produtos. Por exemplo, muitos fornos microondas, aparelhos de TV, video games, CD players e outros dispositivos de consumo contém um ou mais sistemas completos cujo único propósito é o de substituir um projeto de hardware complexo. Engenheiros utilizam computadores com este propósito porque são mais baratos e mais fáceis de desenvolver do que sistemas eletrônicos tradicionais. Você pode facilmente desenvolver software que leia interruptores (variáveis de entrada) e que ligue motores, LEDs ou luzes, trave ou destrave portas, etc. (funções de saída). Para escrever tal software, é preciso entender de funções booleanas e de como implementar tais funções em software. É claro que há outras razões para estudar funções booleanas, mesmo se você nunca pretender escrever software para sistemas embutidos ou escrever software que manipule dispositivos do mundo real. Muitas linguagens de alto nível processam expressões da álgebra booleana (por exemplo, aquelas expressões que controlam uma declaração if ou um laço Por exemplo, suponha que você tenha a seguinte expressão em Pascal: if ((x=y) and (a <> b)) or ((x=y) and (c <= d)) then AlgumaInstr; Você pode utilizar a lei distributiva para simplificar a expressão: if ((x=y) and ((a <> b) or (c <= d)) then AlgumaInstr; Da mesma forma, podemos utilizar o teorema de DeMorgan para reduzir: while (not((a=b) and (c=d)) do AlgumaCoisa; para while (a <> b) or (c <> d) do AlgumaCoisa; Fonte
|
| Última atualização ( Sex, 23.02.2007 11:32 ) |