MC404: Basic Organization of Computers and Assembly Language

DateNotice
11/07Final notes.
04/07Revised notes and presence calculation.
22/06Grade 2 available
09/06Test 7 notes available
03/06Test 6 notes available
14/05Compliant note from the Rectory, there will be no test on Wednesday, 15/05. Thus, the number of tests for the semester was reduced by one.
12/05Tasting notes available (see notes for question at the end of the file)
18/04Test 5 notes available
08/04Test 4 notes available
31/03Test 3 notes available
23/03Test 2 notes available
16/03Test 1 notes available
10/02Don't miss the important dates of the Graduation calendar.

Introduction to computer organization and representation of information in memory. Study of the instruction set of relevant processors. Development, implementation and testing of programs using assembly languages. Physical address space and address mapping for memory and peripherals. Programming of input and output devices. Treatment of interruptions.

The recommended bibliography for the activities of this discipline is: Noam Nisan and Shimon Schocken. The Elements of Computing Systems. MIT Press. 2008.

For activities on the ARM processor, I recommend online manuals (1 / 2 / 3 / 4 / 5).

Book materials and chapters can be downloaded directly from the book page

ARM Simulator: Visual

Evidences: 60% of the semester grade (30% for P1 and 30% for P2)

Weekly Tests: 40% of the semester grade (arithmetic average between tests). Notes> = 7,0 in tests can substitute specific questions in the test. The tests will take place every Wednesday and will last 15-20 minutes. Any cancellations / postponements will be informed until the previous class.

Exam: Arithmetic average between the semester grade and the exam.

Minimum grade for exam: 2,5

Any attempted fraud during the semester will be punished to the extent of my authority, including a zero score in the discipline.

Theoretical classes will be shared between the two courses (42 and 49) and will be held on Wednesdays, from 19:00 pm to 21:00 pm in room CB04. Course 42 will have practical classes on Mondays, from 21:00 pm to 23:00 pm in room CC00 and Course 49 will have practical lessons on Fridays, from 21:00 pm to 23:00 pm in room LM03.

Opening hours will be after Wednesday's class. If you need an alternative time, just book it by email or in person.

The opening hours of the monitors (PADs) will be indicated here later

The rooms will be defined near the beginning of the semester.

Extra activities related to chapter 4:

  1. Calculate the absolute value of a number. Consider that the number is at R0.
  2. Add all the elements of a vector. Consider that the base address is at R0 and the size at R1.
  3. Find the smallest element of a vector. Consider that the base address is at R0 and the size at R1.
  4. Draw a point on the screen and move it through the keys on the keyboard.

Test files for extra tests.

DateTheoryLab MondayLab FridayTypeInformationContent
27/021 TheoryPresentation of the Discipline and Chapter 1 (notions of Boolean logic)Presentation / Slides / Text
01/03 1LaboratoryProject 1Project Roadmap 1
04/03 LaboratoryHoliday
06/03 TheoryHoliday
08/03 2LaboratoryProject 1 Project Roadmap 1
11/03 1 LaboratoryProject 1 Project Roadmap 1
13/032 TheoryTest 1 - TemplateSlides / Text
15/03 3LaboratoryProject 2Project Roadmap 2
18/03 2 LaboratoryProject 2Project Roadmap 2
20/033 TheoryTest 2 - Template Slides / Text
22/03 4LaboratoryProject Roadmap 2
25/03 3 LaboratoryProject Roadmap 2
27/034 TheoryTest 3 - TemplateSlides / Text
29/03 5LaboratoryProject Roadmap 3
01/04 4 LaboratoryProject Roadmap 3
03/045 TheoryTest 4 - TemplateSlides / Text
05/04 6LaboratoryProject Roadmap 3
08/04 5 LaboratoryProject Roadmap 3
10/046 TheoryTest 5 - TemplateSlides / Text
12/04 7LaboratoryProject Roadmap 4
15/04 6 LaboratoryProject Roadmap 4
17/047 TheoryLesson of doubts
19/04 LaboratoryHoliday
22/04 - LaboratoryProject Roadmap 4
24/048 TheoryExam 1
26/04 8LaboratoryProject Roadmap 4
29/04 7 LaboratoryProject Roadmap 4
01/05 TheoryHoliday
03/05 9LaboratoryProject Roadmap 5
06/05 8 LaboratoryProject Roadmap 5
08/059 TheorySlides / Text
10/05 10LaboratoryProject Roadmap 5
13/05 9 LaboratoryProject Roadmap 5
15/0510 Theory6 test
17/05 11LaboratoryProject Roadmap 5
20/05 10 LaboratoryProject Roadmap 5
22/0511 Theory6 testSlides
24/05 12LaboratoryImplement the 3 examples / exercises from the last class (LCD, Smallest element of the vector, Fibonacci)
27/05 11 LaboratoryImplement the 3 examples / exercises from the last class (LCD, Smallest element of the vector, Fibonacci)
29/0512 TheoryTest 6 - TemplateSlides
31/05 13LaboratoryImplement the exercise of the last class.
03/06 12 LaboratoryImplement the exercise of the last class.
05/0613 TheoryTest 7 - TemplateSlides
07/06 14LaboratoryImplement the exercises from the last class.
10/06 13 LaboratoryImplement the exercises from the last class.
12/0614 TheoryLesson of doubts
14/06 15LaboratoryImplement new exercises for the slide file.
17/06 14 LaboratoryImplement new exercises for the slide file.
19/0615 TheoryExam 2
21/06 LaboratoryHoliday
24/06 15 Laboratoryno activity
26/0616 TheoryProof view
28/06 16Laboratoryno activity
10/07 16 TheoryExamination