| (16 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
| Linha 5: | Linha 5: | ||
<br> | <br> | ||
:: | :: Davi de Almeida Borges Ladeira | ||
* Os computadores são divididos em duas partes: hardware (HW) e software (SW). O hardware envolve todos os componentes físicos do computador, que são aqueles de fato executam tarefas para o usuário; eles recebem os dados fornecidos, realizam algum tipo de processamento e/ou armazenamento e retornam alguma saída (resultado). Exemplos de integrantes do hardware incluem os processadores (realizam o processamento das informações), placas-mãe (realizam o "controle" | * O estudo da programação traz consigo um termo amplamente conhecido por grande parte da população que usufrui de artefatos digitais: o “programa”. No entanto, para além do uso cotidiano, é necessário compreender como o mesmo é e como realmente funciona. | ||
* Já o software é a parte lógica do computador; envolve tudo aquilo não é palpável, representa o conteúdo das ideias executadas e/ou exibidas pela máquina. O SW é o produto da conversão de um problema real para um problema computacional. Essa conversão é feita por uma longa cadeia de etapas: primeiro, desenvolvemos um algoritmo para a resolução do problema e codificamos esse algoritmo para uma linguagem de programação de alto nível (C, Python etc.), depois, um compilador ou um interpretador (que são softwares) converte esse programa para um linguagem de baixo nível (Assembly etc.) e, finalmente, um montador (ou assembler, que também é um software) transforma esse programa em linguagem de máquina: o código binário. | * Um programa, em sua forma mais simples, é um conjunto de instruções definidas cujo intuito é realizar uma tarefa designada. Essas instruções são escritas em línguas de programação, que permitem, de maneira humana, traduzir ideias para a máquina. Tais tarefas variam, indo desde uma simples soma e subtração até funções complexas, como jogos, aplicativos de banco e chatbots. | ||
* Após esse processo, o hardware é capaz de processar os dados fornecidos (ele pode fazer cálculos complexos, no caso de um processador, pode exibir imagens 2D ou 3D em uma tela, no caso de uma placa de vídeo). Esse processo é o que chamamos de interface usuário-software-hardware. Exemplos de integrantes do software seriam todo tipo de programa ou aplicação (aplicativos do "pacote Office," aplicativos mobile, navegadores de internet, jogos eletrônicos etc.), os sistemas operacionais (como Windows e Linux, que permitem a interface entre o usuário, os demais SWs e o hardware), e demais relacionados como kernels, shells, firmwares e bootloaders. | * Em grande parte dos usos, os programas são executados por meio de uma camada entre o software e o hardware, conhecida como Sistema Operacional (SO), responsável por gerenciar recursos do computador, como memória, processador e dispositivos de entrada e saída. Contudo, existem raras exceções onde o programa acaba fazendo o papel dos SOs, como, por exemplo, em bootloaders, geralmente já presentes diretamente no dispositivo. | ||
* No fim, tudo aquilo que qualquer computador faz se resume, em última instância, a uma sequência de configurações de zeros e uns | * Historicamente, os programas nem sempre possuíram interfaces de fácil acesso para o usuário. Os primeiros programas funcionavam por meio de terminais de comando, onde o usuário necessitava digitar instruções específicas para que o programa funcionasse. Por isso, o uso de programas era inicialmente restrito a profissionais da área de pesquisadores. | ||
* Tudo mudou após o desenvolvimento de interfaces de usuário, sendo conhecida por Graphical User Interface (GUI). O surgimento de tais tecnologias permitiu de maneira facilitada a interação entre o usuário comum e o programa. Essa tecnologia abriu caminho para inúmeras novas possibilidades de interação com aplicativos. | |||
* Atualmente, os programas possuem uma variada gama de usos, indo desde uso recreacional, como visto em aplicativos como TikTok, Youtube e Netflix, até o uso medicinal, científico e bancário. Graças a eles, tarefas que antes seriam extremamente difíceis de realizar (ou até mesmo impossíveis) hoje são realizadas de maneira rápida, automatizada e segura. | |||
<br> | |||
:: Eliseu Kalebe da Silva Magalhães | |||
* Máquinas abstratas são um modelo abstrato, ou seja, teórico, que permite entender, prever e planejar o funcionamento de um computador, são chamadas de abstratas pois ignoram muitos aspectos do funcionamento de uma máquina física para adquirir uma perspectiva mais ampla quanto à, por exemplo, computabilidade de um problema ou complexidade de um algoritmo. As máquinas abstratas são usadas muitas vezes em experimentos mentais, mas podem ser máquinas físicas como a Máquina de Turing. | |||
* Máquinas mecânicas são o que nós comumente chamamos de máquina, um dispositivo que muda a direção ou magnitude de uma força, que podem ser extremamente simples como uma alavanca, plano inclinado ou polia, que podem servir como blocos de construção para máquinas mais complexas como uma bicicleta. | |||
* Máquinas elétricas são máquinas que fazem uso de forças eletromagnéticas e sua interação com voltagens, correntes e movimento, como motores e geradores. Elas fazem uso dessas forças para transformar algum tipo de energia em elétrica ou vice-versa para concluir uma tarefa. | |||
* Máquinas eletrônicas são semelhantes às elétricas, mas têm uma camada a mais de complexidade, pois contêm componentes como transistores e circuitos. | |||
<br> | |||
:: Vinícius Albino Torres Lima | |||
* Os computadores são divididos em duas partes: hardware (HW) e software (SW). O hardware envolve todos os componentes físicos do computador, que são aqueles que de fato executam tarefas para o usuário; eles recebem os dados fornecidos, realizam algum tipo de processamento e/ou armazenamento e retornam alguma saída (resultado). Exemplos de integrantes do hardware incluem os processadores (realizam o processamento das informações), placas-mãe (realizam o "controle" ou "direção" geral dos demais integrantes), memórias de todo tipo (armazenam os dados), teclado, mouse, monitores (realizam a entrada/saída de informações, também são chamados de periféricos, pois estão mais distantes dos outros componentes) [2]. | |||
* Já o software é a parte lógica do computador; envolve tudo aquilo que não é palpável, representa o conteúdo das ideias executadas e/ou exibidas pela máquina. O SW é o produto da conversão de um problema real para um problema computacional. Essa conversão é feita por uma longa cadeia de etapas: primeiro, desenvolvemos um algoritmo para a resolução do problema e codificamos esse algoritmo para uma linguagem de programação de alto nível (C, Python etc.), depois, um compilador ou um interpretador (que são softwares) converte esse programa para um linguagem de baixo nível (Assembly etc.) e, finalmente, um montador (ou assembler, que também é um software) transforma esse programa em linguagem de máquina: o código binário [3]. | |||
* Após esse processo, o hardware é capaz de processar os dados fornecidos (ele pode fazer cálculos complexos, no caso de um processador, pode exibir imagens 2D ou 3D em uma tela, no caso de uma placa de vídeo). Esse processo é o que chamamos de interface usuário-software-hardware. Exemplos de integrantes do software seriam todo tipo de programa ou aplicação (aplicativos do "pacote Office," aplicativos mobile, navegadores de internet, jogos eletrônicos etc.), os sistemas operacionais (como Windows e Linux, que permitem a interface entre o usuário, os demais SWs e o hardware), e demais relacionados como kernels, shells, firmwares e bootloaders [4]. | |||
* No fim, tudo aquilo que qualquer computador faz se resume, em última instância, a uma sequência de configurações de zeros e uns, que são representações para fios pelos quais se passa ou não corrente elétrica. Essas configurações estão no hardware, que é aquilo que existe de fato, no mundo físico; os softwares são os significados lógicos dessas configurações que as tornam úteis, traduzem-as entre os diferentes níveis (de linguagem humana até linguagem de máquina) e permitem que os computadores sejam usados para resolver problemas da vida real [5]. | |||
<br> | <br> | ||
| Linha 15: | Linha 31: | ||
<br> | <br> | ||
[1] | [1] GOTARDO, Reginaldo. Linguagem de programação I. Rio de Janeiro: SESES, 2015. 200 p. | ||
[2] CARVALHO, André C. P. L. F de; LORENA, Ana C. Introdução à Computação - Hardware, Software e Dados. Rio de Janeiro: LTC, 2016. E-book. p. 26. ISBN 9788521633167. | |||
[3] GUDWIN, Ricardo R. Linguagens de programação. Campinas: DCA/FEEC/UNICAMP, 1997. | |||
[4] ORTH, Miguel; FRUET, Fabiane Sarmento Oliveira; OTTE, Janete; NEVES, Marcus. Tecnologias da informação e da comunicação e formação e prática de professores. Pelotas: Editora da UFPel, p. 42-68, 2018. | |||
[5] DAVID A, David A. Patterson et al. Computer Organization and Design: The Hardware/Software Interface. 2017. | |||
<br> | |||
= Questões = | |||
<br> | |||
#. | |||
#. | |||
#. | |||
#. | |||
#. | |||
#. | |||
#. Quais seriam exemplos de dados armazenados em memória primária e memória secundária, respectivamente? | |||
#. O que aconteceria se tentássemos utilizar um computador sem nenhum periférico conectado? É possível aproveitar do poder de um determinado hardware sem instalar os seus drivers apropriados? | |||
#. Quais são os níveis de abstração entre a linguagem humana até a linguagem de máquina e como é feita a tradução de um nível para o outro? | |||
Edição atual tal como às 18h51min de 28 de novembro de 2025
Hierarquia de programas de máquinas
- Um computador, basicamente, é um processador de dados, ou seja, um transformador de dados iniciais (dados de entrada) em dados finais (dados de saída) [1]. Os dados entram no nosso computador através de alguns dispositivos e saem por meio de outros. O programa é um conjunto de instruções a serem realizadas pelo nosso “computador programável”, que na realidade é um computador de propósito geral, pois serve a várias finalidades. Sendo geral, pode-se trocar o programa e resolver problemas diferentes com instruções diferentes.
- Davi de Almeida Borges Ladeira
- O estudo da programação traz consigo um termo amplamente conhecido por grande parte da população que usufrui de artefatos digitais: o “programa”. No entanto, para além do uso cotidiano, é necessário compreender como o mesmo é e como realmente funciona.
- Um programa, em sua forma mais simples, é um conjunto de instruções definidas cujo intuito é realizar uma tarefa designada. Essas instruções são escritas em línguas de programação, que permitem, de maneira humana, traduzir ideias para a máquina. Tais tarefas variam, indo desde uma simples soma e subtração até funções complexas, como jogos, aplicativos de banco e chatbots.
- Em grande parte dos usos, os programas são executados por meio de uma camada entre o software e o hardware, conhecida como Sistema Operacional (SO), responsável por gerenciar recursos do computador, como memória, processador e dispositivos de entrada e saída. Contudo, existem raras exceções onde o programa acaba fazendo o papel dos SOs, como, por exemplo, em bootloaders, geralmente já presentes diretamente no dispositivo.
- Historicamente, os programas nem sempre possuíram interfaces de fácil acesso para o usuário. Os primeiros programas funcionavam por meio de terminais de comando, onde o usuário necessitava digitar instruções específicas para que o programa funcionasse. Por isso, o uso de programas era inicialmente restrito a profissionais da área de pesquisadores.
- Tudo mudou após o desenvolvimento de interfaces de usuário, sendo conhecida por Graphical User Interface (GUI). O surgimento de tais tecnologias permitiu de maneira facilitada a interação entre o usuário comum e o programa. Essa tecnologia abriu caminho para inúmeras novas possibilidades de interação com aplicativos.
- Atualmente, os programas possuem uma variada gama de usos, indo desde uso recreacional, como visto em aplicativos como TikTok, Youtube e Netflix, até o uso medicinal, científico e bancário. Graças a eles, tarefas que antes seriam extremamente difíceis de realizar (ou até mesmo impossíveis) hoje são realizadas de maneira rápida, automatizada e segura.
- Eliseu Kalebe da Silva Magalhães
- Máquinas abstratas são um modelo abstrato, ou seja, teórico, que permite entender, prever e planejar o funcionamento de um computador, são chamadas de abstratas pois ignoram muitos aspectos do funcionamento de uma máquina física para adquirir uma perspectiva mais ampla quanto à, por exemplo, computabilidade de um problema ou complexidade de um algoritmo. As máquinas abstratas são usadas muitas vezes em experimentos mentais, mas podem ser máquinas físicas como a Máquina de Turing.
- Máquinas mecânicas são o que nós comumente chamamos de máquina, um dispositivo que muda a direção ou magnitude de uma força, que podem ser extremamente simples como uma alavanca, plano inclinado ou polia, que podem servir como blocos de construção para máquinas mais complexas como uma bicicleta.
- Máquinas elétricas são máquinas que fazem uso de forças eletromagnéticas e sua interação com voltagens, correntes e movimento, como motores e geradores. Elas fazem uso dessas forças para transformar algum tipo de energia em elétrica ou vice-versa para concluir uma tarefa.
- Máquinas eletrônicas são semelhantes às elétricas, mas têm uma camada a mais de complexidade, pois contêm componentes como transistores e circuitos.
- Vinícius Albino Torres Lima
- Os computadores são divididos em duas partes: hardware (HW) e software (SW). O hardware envolve todos os componentes físicos do computador, que são aqueles que de fato executam tarefas para o usuário; eles recebem os dados fornecidos, realizam algum tipo de processamento e/ou armazenamento e retornam alguma saída (resultado). Exemplos de integrantes do hardware incluem os processadores (realizam o processamento das informações), placas-mãe (realizam o "controle" ou "direção" geral dos demais integrantes), memórias de todo tipo (armazenam os dados), teclado, mouse, monitores (realizam a entrada/saída de informações, também são chamados de periféricos, pois estão mais distantes dos outros componentes) [2].
- Já o software é a parte lógica do computador; envolve tudo aquilo que não é palpável, representa o conteúdo das ideias executadas e/ou exibidas pela máquina. O SW é o produto da conversão de um problema real para um problema computacional. Essa conversão é feita por uma longa cadeia de etapas: primeiro, desenvolvemos um algoritmo para a resolução do problema e codificamos esse algoritmo para uma linguagem de programação de alto nível (C, Python etc.), depois, um compilador ou um interpretador (que são softwares) converte esse programa para um linguagem de baixo nível (Assembly etc.) e, finalmente, um montador (ou assembler, que também é um software) transforma esse programa em linguagem de máquina: o código binário [3].
- Após esse processo, o hardware é capaz de processar os dados fornecidos (ele pode fazer cálculos complexos, no caso de um processador, pode exibir imagens 2D ou 3D em uma tela, no caso de uma placa de vídeo). Esse processo é o que chamamos de interface usuário-software-hardware. Exemplos de integrantes do software seriam todo tipo de programa ou aplicação (aplicativos do "pacote Office," aplicativos mobile, navegadores de internet, jogos eletrônicos etc.), os sistemas operacionais (como Windows e Linux, que permitem a interface entre o usuário, os demais SWs e o hardware), e demais relacionados como kernels, shells, firmwares e bootloaders [4].
- No fim, tudo aquilo que qualquer computador faz se resume, em última instância, a uma sequência de configurações de zeros e uns, que são representações para fios pelos quais se passa ou não corrente elétrica. Essas configurações estão no hardware, que é aquilo que existe de fato, no mundo físico; os softwares são os significados lógicos dessas configurações que as tornam úteis, traduzem-as entre os diferentes níveis (de linguagem humana até linguagem de máquina) e permitem que os computadores sejam usados para resolver problemas da vida real [5].
Referências bibliográficas
[1] GOTARDO, Reginaldo. Linguagem de programação I. Rio de Janeiro: SESES, 2015. 200 p.
[2] CARVALHO, André C. P. L. F de; LORENA, Ana C. Introdução à Computação - Hardware, Software e Dados. Rio de Janeiro: LTC, 2016. E-book. p. 26. ISBN 9788521633167.
[3] GUDWIN, Ricardo R. Linguagens de programação. Campinas: DCA/FEEC/UNICAMP, 1997.
[4] ORTH, Miguel; FRUET, Fabiane Sarmento Oliveira; OTTE, Janete; NEVES, Marcus. Tecnologias da informação e da comunicação e formação e prática de professores. Pelotas: Editora da UFPel, p. 42-68, 2018.
[5] DAVID A, David A. Patterson et al. Computer Organization and Design: The Hardware/Software Interface. 2017.
Questões
- .
- .
- .
- .
- .
- .
- . Quais seriam exemplos de dados armazenados em memória primária e memória secundária, respectivamente?
- . O que aconteceria se tentássemos utilizar um computador sem nenhum periférico conectado? É possível aproveitar do poder de um determinado hardware sem instalar os seus drivers apropriados?
- . Quais são os níveis de abstração entre a linguagem humana até a linguagem de máquina e como é feita a tradução de um nível para o outro?