Identifying Data 2017/18
Subject (*) Computting Code 730G03004
Study programme
Grao en Enxeñaría Mecánica
Descriptors Cycle Period Year Type Credits
Graduate 1st four-month period
First FB 6
Language
Spanish
Teaching method Face-to-face
Prerequisites
Department Computación
Coordinador
Duro Fernandez, Richard Jose
E-mail
richard.duro@udc.es
Lecturers
Becerra Permuy, Jose Antonio
Bellas Bouza, Francisco Javier
Duro Fernandez, Richard Jose
Monroy Camafreita, Juan
E-mail
jose.antonio.becerra.permuy@udc.es
francisco.bellas@udc.es
richard.duro@udc.es
juan.monroy@udc.es
Web http://moodle.udc.es
General description A materia obxecto desta guía constitúe a única disciplina de formación básica de ámbito puramente informático na titulación. Polos seus contidos, e dado o marcado carácter instrumental da materia e que a maior parte das materias de Enxeñaría necesitan métodos de cálculo susceptibles de ser realizados con axuda de ordenador, observamos que poderían ser practicamente todas as materias ás que a Informática apoiase dende os seus contidos como ferramenta indispensable para o enxeñeiro.

Study programme competencies
Code Study programme competences
A3 Coñecementos básicos sobre o uso e programación dos ordenadores, sistemas operativos, bases de datos e programas informáticos con aplicación en enxeñaría.
A12 Coñecementos sobre os fundamentos de automatismos e métodos de control.
B2 Que os estudantes saiban aplicar os seus coñecementos ao seu traballo ou vocación dunha forma profesional e posúan as competencias que adoitan demostrarse por medio da elaboración e defensa de argumentos e a resolución de problemas dentro da súa área de estudo
B3 Que os estudantes teñan a capacidade de reunir e interpretar datos relevantes (normalmente dentro da súa área de estudo) para emitiren xuízos que inclúan unha reflexión sobre temas relevantes de índole social, científica ou ética
B4 Que os estudantes poidan transmitir información, ideas, problemas e solucións a un público tanto especializado como leigo
B6 Ser capaz de concibir, deseñar ou poñer en práctica e adoptar un proceso substancial de investigación con rigor científico para resolver calquera problema formulado, así como de comunicar as súas conclusións –e os coñecementos e razóns últimas que as sustentan– a un público tanto especializados como leigo dun xeito claro e sen ambigüidades
B7 Ser capaz de realizar unha análise crítica, avaliación e síntese de ideas novas e complexas
B9 Adquirir unha formación metodolóxica que garanta o desenvolvemento de proxectos de investigación (de carácter cuantitativo e/ou cualitativo) cunha finalidade estratéxica e que contribúan a situarnos na vangarda do coñecemento
C1 Utilizar as ferramentas básicas das tecnoloxías da información e as comunicacións (TIC) necesarias para o exercicio da súa profesión e para a aprendizaxe ao longo da súa vida.
C4 Valorar criticamente o coñecemento, a tecnoloxía e a información dispoñible para resolver os problemas cos que deben enfrontarse.
C5 Asumir como profesional e cidadán a importancia da aprendizaxe ao longo da vida.

Learning aims
Learning outcomes Study programme competences
Coñecer a estrutura funcional dun computador e os seus compoñentes principais. A3
B4
C1
C4
C5
Comprender a representación da información no computador. A3
B9
C1
C5
Adquirir coñecementos sobre a estrutura e funcións dun sistema operativo A3
C1
C5
Coñecer os fundamentos das redes de computadores e de Internet C1
C5
Capacidade de resolver problemas mediante o computador, neste caso o desenvolvemento de algoritmos e/ou programas A3
A12
B2
B3
B6
B7
C1
C5

Contents
Topic Sub-topic
Os bloques ou temas seguintes desenvolven os contidos establecidos na ficha da Memoria de Verificación: - Estructura dos computadores
- Sistemas operativos
- Representación e almacenamento de datos
- Introducción ás redes de comunicacións
- Algoritmos e programación
BLOQUE DIDÁCTICO I ------------------------------------------------
Tema 1: Representación da información 1.1.- Medida da información
1.2.- Sistemas de numeración usuais en Informática
1.2.1 Sistema de numeración binario
1.2.2 Códigos intermedios
1.3.- Representación de números enteiros
1.3.1.- Representación binaria sen signo
1.3.2.- Representación binaria signo-magnitude
1.3.3.- Representación binaria en complemento a 1
1.3.4.- Representación binaria en complemento a 2
1.3.5.- Aritmética con enteiros
1.3.6.- Representación decimal BCD
1.4.- Representación de carácteres
1.4.1.- Código ASCII
1.5.- Representación de información analóxica
1.5.1.- Representación de son
1.5.2.- Representación de imaxes
Tema 2: Arquitectura de ordenadores 2.1.- Arquitectura Von Neumann e extensións
2.2.- Memoria Principal
2.2.1.- Tipos de Memoria Principal
2.2.2.- Rendemento CPU-Memoria
2.2.3.- Xerarquía de memorias: memoria caché
2.3.- CPU (Unidade Central de Proceso)
2.3.1.- A Unidade Aritmético-Lóxica
2.3.2.- A Unidade de Control
2.3.3.- Rexistros da CPU
2.4.- Sistemas de almacenamento masivo
2.4.1.- Discos magnéticos
2.4.2.- Discos ópticos
2.4.3.- Memorias de estado sólido e USB
2.5.- Conexións e portos
Tema 3: Sistemas operativos 3.1.- Estrutura e funcións dun sistema operativo
3.2.- Tipos de sistemas operativos
3.3.- Xestión de recursos
3.3.1.- Xestión de arquivos e directorios
3.3.2.- Xestión do procesador
3.3.3.- Xestión da memoria principal
3.3.4.- Xestión de entrada/saída
3.3.5.- Xestión da seguridade
Tema 4: Redes de datos e Internet 4.1.- Sistemas e medios de transmisión
4.2.- Redes de comunicación e topoloxías de rede
4.3.- Tipos de redes
4.4.- Protocolos de rede
4.5.- Internet e a web
BLOQUE DIDÁCTICO II ------------------------------------------------
Tema 5: Introdución á programación 5.1.- A programación
5.1.1.- Fase de análise
5.1.2.- Fase de programación
5.1.3.- Fase de codificación
5.2.- Estrutura dun programa
5.2.1.- Partes principais dun programa
5.2.2.- Clasificación das instrucións
5.2.3.- Elementos auxiliares dun programa
5.3.- Descrición de programas
5.3.1.- Pseudocódigo
5.3.2.- Organigramas de programa e sistema
5.3.3.- Representación das estruturas de control
5.4.- Linguaxes de programación
5.4.1.- Linguaxe máquina
5.4.2.- Linguaxe ensambladora
5.4.3.- Linguaxe de alto nivel
5.4.4.- Tradutores de linguaxe
Tema 6: Introdución a unha linguaxe de programación: linguaxe C 6.1.- Descrición xeral
6.2.- Estrutura dun programa en C
6.3.- Tipos de datos, operadores e expresións
6.4.- Declaración de variables e constantes
6.5.- Entrada e saída estándar
Tema 7: Estruturas de control 7.1.- Expresións lóxicas
7.2.- Instrucións selectivas
7.3.- Instrucións iterativas
7.4.- Instrucións de salto
Tema 8: Funcións 8.1.- Definición, declaración e chamada de funcións
8.2.- O ámbito das variables
8.3.- Paso de argumentos
8.3.1.- Concepto de apuntador ou punteiro
8.3.2.- Operadores de dirección e indirección
8.3.3.- Paso de argumentos por valor e por referencia
Tema 9: Tipos de datos estructurados 9.1.- Vectores ou arrays
9.1.1.- Definición e uso dun vector
9.1.2.- Inicialización
9.1.2.- Reserva dinámica de memoria
9.2.- Matrices multidimensionais
9.1.1.- Definición e uso dunha matriz
9.1.2.- Inicialización
9.1.2.- Reserva dinámica de memoria
9.3.- Cadeas de carácteres
9.4.- Estruturas
Tema 10: Ficheiros 10.1.- Declaración de ficheiros
10.3.- Apertura e peche de ficheiros
10.4.- Lectura e escritura de datos
10.5.- Acceso directo aos datos

Planning
Methodologies / tests Competencies Ordinary class hours Student’s personal work hours Total hours
Mixed objective/subjective test A3 B2 B3 C1 4 0 4
Guest lecture / keynote speech A3 A12 B7 C4 C5 30 30 60
Laboratory practice A3 B2 C1 24 24 48
Problem solving A3 B2 B4 B6 B9 C1 6 30 36
 
Personalized attention 2 0 2
 
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies Description
Mixed objective/subjective test Proba de avaliación que se realizará ao final de curso nas correspondentes convocatorias oficiais. Consistirá nunha proba escrita na que haberá que responder a diferentes tipos de preguntas sobre o temario de teoría e resolver problemas prácticos de programación
Guest lecture / keynote speech Actividade presencial na aula que serve para establecer os conceptos fundamentais da materia. Consiste na exposición oral complementada co uso de medios audiovisuais/multimedia e a introdución dalgunhas preguntas dirixidas aos estudantes, co fin de transmitir coñecementos e facilitar a aprendizaxe.
Laboratory practice Desenvolvemento de prácticas no laboratorio de informática. Esta actividade consistirá no estudo de casos e exemplos ademais da realización, por parte do alumnos, de exercicios de programación.
Problem solving Consistirá na realización por parte do alumno dun traballo práctico de programación en linguaxe C que se propoñerá na aula. Deberá ser entregado e será avaliado mediante a corrección por parte do profesor.

Personalized attention
Methodologies
Laboratory practice
Problem solving
Description
Prácticas de laboratorio: a atención personalizada realízase de forma activa durante as prácticas, xa que o profesor non formula exercicios e simplemente dá tempo para que os alumnos os resolvan, senón que controla en todo momento que non existan alumnos que perdan o fío da explicación ou queden estancados. De cara a manter un nivel homoxéneo en todo o grupo, é necesario que o profesor dedique máis tempo a aqueles alumnos que máis o necesiten.

Solución de problemas: a atención personalizada centrarase na guía e corrección do traballo práctico proposto no curso, centrándose o profesor en destacar as virtudes e sinalar os fallos de cada alumno para lograr o seu máximo rendemento e comprensión da materia.


Assessment
Methodologies Competencies Description Qualification
Mixed objective/subjective test A3 B2 B3 C1 Proba final da materia. Esta proba terá unha parte de teoría e outra de práctica. 70
Problem solving A3 B2 B4 B6 B9 C1 Valoraranse os conceptos prácticos de programación mediante 4 exercicios de programación que se resolverán na aula ao longo do cuadrimestre de forma autónoma por parte do alumno 30
 
Assessment comments

A nota final da materia calcularase da seguinte forma:

Nota Final (NF) = 0,4*Nota_Teoría + 0,6*Nota_Practica

sendo imprescindible que tanto a Nota de Teoría como a Nota de Prácticas sexan maiores de 5 para aprobar a materia.

A Nota de Teoría obterase nun exame que se realizará a final de curso.

A Nota de Práctica calcúlase mediante a expresión:

Nota_Practica = 0,5*Nota_exame_práctico + 0,5*Nota_traballo_práctico

Nota_exame_práctico é a nota obtida nun exame que se realizará a final de curso e para o cal o alumno ten 2 convocatorias, unha en xaneiro e outra en xullo.

Nota_traballo_práctico é a nota recibida pola elaboración do traballo práctico proposto no laboratorio. 

De acordo ao artigo 14, apartado 4, da normativa*, o plaxio do traballo práctico levará unha nota global de NON APTO, tanto ao estudante que presente material copiado como ao que o facilitara, e por tanto a cualificación de SUSPENSO na convocatoria anual.

As Notas de Práctica e Teoría calcúlanse do mesmo xeito nas convocatorias de Xaneiro e Xullo. Por tanto, a Nota do Exame Práctico ten un valor do 50% da parte práctica en ambas as convocatorias. A nota obtida durante o curso no traballo práctico se garda para a convocatoria de Xullo, NON SENDO POSIBLE REPETILO.

* Normativa de avaliación, revisión e reclamación dás cualificacións dúas estudos de grao e máster universitario, aprobada polo Consello de Goberno dá Universidade dá Coruña ou 19 de decembro de 2013


Sources of information
Basic García, F., Carretero, J., Fernández, J., Calderón, A. (2002). El lenguaje de programación C. Diseño e implementación de programas. Prentice Hall
de Miguel Anasagasti, P. (2004). Fundamentos de los Computadores. International Thomson Learning Paraninfo
Prieto, A., Lloris, A., Torres, J. C. (2006). Introducción a la Informática. McGraw-Hill
Gottfried, B. (2005). Programación en C. McGraw-Hill
Joyanes, L., Zahonero, I. (2005). Programación en C. Metodología, algoritmos y estructuras de datos. McGraw-Hill

Complementary Joyanes Aguilar, L., Castillo Sanz, A., Sánchez García, L., Zahonero Martínez, I. (2005). C. Algoritmos, programación y estructuras de datos. McGraw-Hill
Tanenbaum, A. S. (2000). Organización de computadoras: Un enfoque estructurado. Pearson Educación
Stallings, W. (2000). Organización y Arquitectura de Computadores. Prentice Hall
Joyanes Aguilar, L., Castillo Sanz, A., Sánchez García, L., Zahonero Martínez, I. (2002). Programación en C. Libro de problemas. McGraw-Hill


Recommendations
Subjects that it is recommended to have taken before
Computer Aided Desing and Analysis/730G03033
Reliability Statistics and Numerical Methods/730G03046

Subjects that are recommended to be taken simultaneously

Subjects that continue the syllabus

Other comments

É moi recomendable o aproveitamento das clases prácticas de programación que se realizarán ao longo do curso. Así mesmo, a través da páxina web da materia iranse expondo diversos exercicios para fomentar a capacidade de resolución problemas que será esixida ao alumno. É moi recomendable a realización destes exercicios para un bo aproveitamento da materia.



(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.