Giter VIP home page Giter VIP logo

computer_architecture's Introduction

computer_architecture

This repository contains assembly language codes (*.asm), as well as documents of my own on the subject of "Computer Architecture and Organization".

My name is Pedro Botelho, and I study Computer Engineering at the Federal University of Ceará, campus in Quixadá, here in Brazil. All of my codes can be found in English, being a virtually universal language (Esperanto is not a thing). All the content here was made based on the knowledge earned in the "Computer Architecture and Organization" course.

All content here complies with the "GNU General (or Generic, I dunno) Public Lincense" license, or at least in parts. Anyway, all content here can be reproduced, I just ask you to give me the minimum credit for the descriptions and explanations in text, and to learn from them.

the organization of this repository is very simple (and dare I say, very organized too). Basically we have this README.md and another LICENSE file in the root folder of the directory, as well as the code folders (* .asm), those in "camelCase" to be cute. In the future, I want to explain about topics related to computer architecture.

Each assembly project folder has 5 folders (to maintain organization and a standard) and two files.

First, the "bin /" folder stores the binary files, that is, the executables (for Linux, of course).

Then we have "doc /", where are the reports. Now that's odd ... This folder may have something, and maybe not ... Turns out most of these questions were asked for a test, so these have a detailed report, but the others don't ... Those that don't have a report will have a short but sufficient description in README.txt.

The "io_files /" folder has input and output files. Another case aside, this folder is useful in projects with a focus on system calls for reading and writing, or programs that do this in its scope at least, but to maintain the standard all folders have.

Then we have the "obj /" folder to store the object files (* .o). Here you ask me "why keep them?" and I answer "I don’t know, leave it like that, it’s cooler (and organized)".

Then we have "src /" to store the source code "* .asm". Simple as that, but the most important folder.

The "Makefile" is our friend for all hours. With a simple "make ..." you stop writing a lot. Each folder has its specific. It may be that some projects have more than one "file.asm" there, so in README.txt you will be specifying the correct way to compile. In general, just do a "make build". If you have any specifics, then "make build arg = condition".

The "README.txt" is more of an informative. It tells you the purpose of the program, how to use it, how to compile it, and will often upset the Windows crowd, warning that I don't have pre-compiled executables ... Forgive me, I use both, but Linux for certain things is better. For projects without a report it will be more "stuffed". For those who have a report it is more bland.

computer_architecture's People

Contributors

botelhocpp avatar

Stargazers

Miguel Villa Floran avatar Shader Coder avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.