EXAM 1 Topics Flashcards
What is a high level language?
A programming language that is designed to be easy for humans to read and write. Are used to write software that can be understood by humans and computers.
What is a low level languages?
They are closer to machine languages and are harder for humans to read and write. Are used to write programs that interact directly with the computers hardware.
What is a mid level language?
Serves as a bridge between high level and low level languages.
What are language paradigms?
Are a way to classify programming languages based on their features. Used to describe the style of syntax and grammar, the way the code is organized and the implications for the execution model of the language. FUNCTIONAL, IMPERATIVE,OBJECT ORIENTED
What is object oriented programming?
OOP, is a programming paradigm that is based on the concept of object. An object is a self contained entity that consists of both data and methods that operate on that data.
What is machine language?
A low level programming language that is used to represent operations and fata in a machine. (binary)
What are the four pillars of OOP?
Encapsulation, Abstraction, Inheritance, Polymorphism
What is encapsulation?
Is the process of hiding the implementation details of an object from the outside world. Is done to protect the objects integrity and to prevent unauthorized access to its internal state.
What is abstraction?
Is the process of simplifying complex systems by breaking them down into smaller, more manageable parts.
What is inheritance?
Is the process of creating new classes from existing classes. The new classes inherit the properties and methods of the existing classes, which can then be modified or extended as needed.
What is polymorphism?
Is the ability of objects to take on many forms. Is achieved through method overloading and method overriding.
What are the steps of translation from c code to machine code?(Program translation)
Preprocessing, Compiling, Assembling, Linking,Loader
How do you compile the file hello.c?
$ gcc -std=c99 -Wall -Wextra -pedantic -c hello.c
$ gcc -o hello hello.o
What does the -Wall flag do?
It enables all warning messages that the compiler can generate.
What does the -c flag do?
This flag tells the compiler to compile the source code into an object file, but not to link it with other object files to create an executable program.
What does the -o flag do?
This flag specifies the name of the output file that the compiler should generate.