Inversão de String em Assembly
Objetivo
Apresentar, em programas nas linguagem C e Assembly, um algoritmo para inverter o conteúdo de uma String.
Descrição
O objeto de aprendizagem é compreendido por um programa em C++, que implementa inicialmente uma "varredura" na String, de modo a obter o seu tamanho. Obtido o tamanho, a "varredura" é feita de forma inversa, exibindo cada um dos caracteres da String. Em comentário ao programa em C é apresentada uma adaptação deste programa, para Assembly (8-Bit Assembler Simulator).
Palavras-Chave
Manipulação de strings, Programação, C++, Assembly.
Categorização
Aplicativos, Programa de Computador.
Área e Sub-Área
Computação, Arquitetura de Computadores.
Nível de Ensino / Série
Técnico Profissionalizante e Universitário.
Pré-Requisitos
Programação básica de computadores nas linguagens C++ e Assembly.
Programas
Informações ao Professor
O OA foi especialmente desenvolvido para o uso em componentes curriculares de Arquitetura de Computadores e seus afins. Como usa de técnicas relacionadas com as linguagens C e Assembly, o aluno deve ter, pelo menos, o conhecimento básico de programação de computadores e de álgebra Booleana.
Os programas foram criados com o foco na manipulação de cadeia de dados em Assembly, partindo da compreensão de programas em C++. Partindo da análise de um programa em auto nível (leitura e compreensão facilitadas) é criada uma estrutura em Assembly, para executar a mesma tarefa.
Características Técnicas
O OA foi desenvolvido usando a Linguagem C++, inserida no ambiente Web JDoodle. A linguagem C foi selecionada pois permite que o programador, tenha um controle quase que absoluto dos componentes do computador. Já o ambiente JDoodle facilita o processo de desenvolvimento de programas pequenos, sendo assim muito útil no ensino de programação. A sua interface baseada na Web facilita o acesso, onde o professor pode usar de qualquer laboratório de informática com acesso à Internet, sem que seja necessária a instalação de aplicativos especiais - o navegador já é o suficiente.
O apêndice em Assembly foi escrito para ser executado no 8-bit Assembler Simulator (também baseado na Web), que é uma máquina (simulador) com características organizacionais bem "discretas", onde destacam-se: i) o armazenamento e endereçamento de dados em 8 bits; ii) a pouca disponibilidade de registradores e; iii) o conjunto restrito de instruções.
Desenvolvedor
Prof. Cássio D. B. Pinheiro.