{"id":20572362,"url":"https://github.com/algosup/2023-2024-project-3-virtual-processor-team-2","last_synced_at":"2025-08-20T09:12:37.315Z","repository":{"id":216660547,"uuid":"740528719","full_name":"algosup/2023-2024-project-3-virtual-processor-team-2","owner":"algosup","description":"Third project of 2023-2024 year which aims creating our own assembly language, with an interpreter to be able to read and run our programs. 📎","archived":false,"fork":false,"pushed_at":"2024-12-19T15:58:33.000Z","size":4968,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T05:41:29.143Z","etag":null,"topics":["aop","aop-interpreter","asm","assembly","at2","iat2","interpreter","language-model","vcpu","virtual-processor"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/algosup.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-08T14:29:23.000Z","updated_at":"2025-02-25T12:52:22.000Z","dependencies_parsed_at":"2024-01-15T10:19:38.817Z","dependency_job_id":"087376d1-7ec3-4716-ae4e-1611158d71f3","html_url":"https://github.com/algosup/2023-2024-project-3-virtual-processor-team-2","commit_stats":null,"previous_names":["algosup/2023-2024-project-3-virtual-processor-team-2"],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/algosup%2F2023-2024-project-3-virtual-processor-team-2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/algosup%2F2023-2024-project-3-virtual-processor-team-2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/algosup%2F2023-2024-project-3-virtual-processor-team-2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/algosup%2F2023-2024-project-3-virtual-processor-team-2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/algosup","download_url":"https://codeload.github.com/algosup/2023-2024-project-3-virtual-processor-team-2/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248923764,"owners_count":21183954,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aop","aop-interpreter","asm","assembly","at2","iat2","interpreter","language-model","vcpu","virtual-processor"],"created_at":"2024-11-16T05:19:43.396Z","updated_at":"2025-04-14T17:10:23.961Z","avatar_url":"https://github.com/algosup.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [2024] - IAT2️⃣\n\n\n\u003cdiv align=\"center\"\u003e\n    \u003ca target=\"_blank\" href=\"https://en.wikipedia.org/wiki/Vierzon\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Made%20in-Vierzon-success.svg\" alt=\"Made in Vierzon\"\u003e\n    \u003c/a\u003e\n    \u003ca target=\"_blank\" href=\"https://algosup.com/\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Made%20at-ALGOSUP-blue.svg\" alt=\"Made at ALGOSUP\"\u003e\n    \u003c/a\u003e\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n\n  \u003cimg style=\"width:200px; display: block; margin: auto;\"  src=\"documents\\images\\IAT2\\png\\iat2_logo_256px.png\" alt=\"Assembly Team 2\"\u003e\n\n\u003c/div\u003e\n\n\n\n## 🫂 Who are we ?\n| **Picture**                                                                                      | **Name**               | **Role**          | **GitHub**                                                                                                                                                                                                                                                                                                                               | **LinkedIn**                                                                                                                                             |\n| ------------------------------------------------------------------------------------------------ | ---------------------- | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------|\n| \u003cimg src=https://ca.slack-edge.com/T06AELBCZSB-U06AS9UQZ6Z-g7986289d5c2-512 style=\"width:200px\"\u003e | **Mathias GAGNEPAIN**  | Project Manager   | \u003ca href=\"https://github.com/MathiasGagnepain\"\u003e  \u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"documents/images/management/github_light_logo.png\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"documents/images/management/github_dark_logo.png\"\u003e\u003cimg alt=\"GitHub Logo\"  style=\"width:50px\"\u003e    \u003c/picture\u003e\u003c/a\u003e   | [\u003cimg src=\"documents/images/management/linkedin_logo.png\" alt=\"LinkedIn\" style=\"width:50px\"\u003e](https://www.linkedin.com/in/mathias-gagnepain-426a131b0/)  |  \n| \u003cimg src=https://ca.slack-edge.com/T06AELBCZSB-U06BJ1BQE00-g3ffdd245b21-512 style=\"width:200px\"\u003e | **Guillaume DESPAUX**  | Program Manager   | \u003ca href=\"https://github.com/GuillaumeDespaux\"\u003e  \u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"documents/images/management/github_light_logo.png\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"documents/images/management/github_dark_logo.png\"\u003e\u003cimg alt=\"GitHub Logo\"  style=\"width:50px\"\u003e    \u003c/picture\u003e\u003c/a\u003e   | [\u003cimg src=\"documents/images/management/linkedin_logo.png\" alt=\"LinkedIn\" style=\"width:50px\"\u003e](https://www.linkedin.com/in/guillaume-despaux-084b10206/)  |              \n| \u003cimg src=https://ca.slack-edge.com/T06AELBCZSB-U06ATEC5AG5-g70bf9de2131-512 style=\"width:200px\"\u003e | **Guillaume DERAMCHI** | Technical Leader  | \u003ca href=\"https://github.com/Guillaume18100\"\u003e    \u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"documents/images/management/github_light_logo.png\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"documents/images/management/github_dark_logo.png\"\u003e\u003cimg alt=\"GitHub Logo\"  style=\"width:50px\"\u003e    \u003c/picture\u003e\u003c/a\u003e   | [\u003cimg src=\"documents/images/management/linkedin_logo.png\" alt=\"LinkedIn\" style=\"width:50px\"\u003e](https://www.linkedin.com/in/guillaume-deramchi-a45116293/) |              \n| \u003cimg src=https://ca.slack-edge.com/T06AELBCZSB-U06AXL3CDGC-gf21fde06b1f-512 style=\"width:200px\"\u003e | **Maxime CARON**       | Software Engineer | \u003ca href=\"https://github.com/MaximeAlgosup\"\u003e     \u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"documents/images/management/github_light_logo.png\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"documents/images/management/github_dark_logo.png\"\u003e\u003cimg alt=\"GitHub Logo\"  style=\"width:50px\"\u003e    \u003c/picture\u003e\u003c/a\u003e   | [\u003cimg src=\"documents/images/management/linkedin_logo.png\" alt=\"LinkedIn\" style=\"width:50px\"\u003e](https://www.linkedin.com/in/maxime-caron-dev/)             |              \n| \u003cimg src=https://ca.slack-edge.com/T06AELBCZSB-U06CFLBV3MZ-g3621cbd420c-512 style=\"width:200px\"\u003e | **Paul NOWAK**         | Software Engineer | \u003ca href=\"https://github.com/PaulNowak36\"\u003e       \u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"documents/images/management/github_light_logo.png\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"documents/images/management/github_dark_logo.png\"\u003e\u003cimg alt=\"GitHub Logo\"  style=\"width:50px\"\u003e    \u003c/picture\u003e\u003c/a\u003e   | [\u003cimg src=\"documents/images/management/linkedin_logo.png\" alt=\"LinkedIn\" style=\"width:50px\"\u003e](https://www.linkedin.com/in/paul-nowak-0757a61a7/)         |              \n| \u003cimg src=https://ca.slack-edge.com/T06AELBCZSB-U06ANSN526S-g20f42d2a13d-512 style=\"width:200px\"\u003e | **Enzo GUILLOUCHE**    | Quality Assurance | \u003ca href=\"https://github.com/EnzoGuillouche\"\u003e    \u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"documents/images/management/github_light_logo.png\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"documents/images/management/github_dark_logo.png\"\u003e\u003cimg alt=\"GitHub Logo\"  style=\"width:50px\"\u003e    \u003c/picture\u003e\u003c/a\u003e   | [\u003cimg src=\"documents/images/management/linkedin_logo.png\" alt=\"LinkedIn\" style=\"width:50px\"\u003e](https://www.linkedin.com/in/enzo-g-b62114293/)             |                 \n\nRead the list of [contributors](https://github.com/algosup/2023-2024-project-3-virtual-processor-team-2/contributors) to see who helped with the project!\n\u003chr\u003e\n\n## 📚 What is this project ?\n\nThis project (IAT2) involves the creation of a new assembly language for enhanced understanding and usability, we introduce the AT2, accompanied by its dedicated assembler (2AT2) and virtual Processor (VAT2).\n\n## 🕵️‍♂️ What is AT2 ?\n\nAT2 stands for **A**ssembly **T**eam **2**, representing our proprietary assembly language.\n*You can also refer to the [documentation](./documents/functional/at2_language_documentation.pdf).*\n\n## ⚙️ What is 2AT2 ?\n\n2AT2 stands for **A**ssembler for **A**ssembly **T**eam **2**, serving as the exclusive assembler capable of reading and converting `.aop` files written in our AT2 language into machine code (Binary).\n\n## 💻 What is VAT2 ?\n\nVAT2 stands for **V**irtual Processor for **A**ssembly **T**eam **2**, serving as a virtual processor able to execute our binary generated by 2AT2.\n\n## 📦 What is IAT2 ?\n\nIAT2 stands for **I**ntegral **A**ssembler **T**eam **2**, it's the name of the whole project (2AT2 + VAT2).\n\n## 💾 Why did we choose .aop as extension ?\n\nWe selected the `.aop` extension to signify **A**op **O**riginal **P**rogram, embodying an infinite recursive loop inspired by [ZWEI](https://en.wikipedia.org/wiki/EINE_and_ZWEI#Naming)'s name.\n\n## 🔎 How does it work ?\n\nTo assemble your code in `.aop`, here is some commands related to **2AT2** usage.\n\n1. Compile you AT2's code: `2at2 \u003cpath/file.aop\u003e`\n2. Display the commands list: `2at2 -help` or `2at2 -h`\n3. Compile + run your AT2's code with VAT2: `iat2 \u003cpath/file.aop\u003e`\n\n*You can also refer to the entire [user manual](./documents/functional/user_manual.md) and [AT2 documentation](./documents/functional/at2_language_documentation.pdf).*\n\n### 🔗 Requires\n\nTo use IAT2 you need:\n\n- A computer *(Windows Recommended)*\n- GCC installed, you can install it [here](https://www.devdungeon.com/content/install-gcc-compiler-windows-msys2-cc)\n\n### 💽 Installation\n\nStep By Step:\n\n1. Clone the repository: `git clone https://github.com/algosup/2023-2024-project-3-virtual-processor-team-2.git`\n2. Go at the project root\n3. Build the project\n   - How to use with mingw: (Windows)\n     1. Execute ``cmake -S . -B Build -G \"MinGW Makefiles\"``\n     2. Execute ``cd Build``\n     3. Execute ``mingw32-make``\n   - How to use with msys2: (Windows)\n     1. Execute ``cmake -S . -B Build -G \"MSYS Makefiles\"``\n     2. Execute ``cd Build``\n     3. Execute ``make``\n\nIt will generate a bin folder containing our runners to use it refers to [How does it work](#🔎-how-does-it-work)\n\n*You can also refer to [user manual](./documents/functional/user_manual.md).*\n\n## 🛠️ Made with\n\n* [C99](https://en.wikipedia.org/wiki/C99) - C programming Language[.](https://www.youtube.com/watch?v=tas0O586t80)\n* [C++](https://cplusplus.com/) - C++ Language used for unit tests.\n* [Visual Studio Code](https://code.visualstudio.com/) - [IDE](https://en.wikipedia.org/wiki/Integrated_development_environment) (Integrated Developement Environement).\n* [CMake](https://cmake.org/) - Software Build System for C \u0026 C++ code.\n* [GoogleTest](https://github.com/google/googletest) - Google's internal systems for continuous integration.\n* [GCC](https://gcc.gnu.org/) - Used to compile C language.\n* [G++](https://gcc.gnu.org/) - Used to compile C++ language \n\n## 🤝 Contributing\n\nIf you want to contribute please take a look to [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## 🗃️ Versions\n- **Latest :** 1.1.2\n- **Current :** 1.1.2\n- Versions List : [Cliquer pour afficher](https://github.com/algosup/2023-2024-project-3-virtual-processor-team-2/tags)\n\n## ⚖️ License\n\nThis project is under license ``MIT`` - see the [LICENSE](LICENSE) file for more information.\n\n\u003ca target=\"_blank\" href=\"https://algosup.com/\"\u003e\u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"documents/images/management/algosup_orange.svg\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"documents/images/management/algosup_light_blue.svg\"\u003e\u003cimg alt=\"ALGOSUP Logo\" style=\"max-width:1440px\" \u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falgosup%2F2023-2024-project-3-virtual-processor-team-2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falgosup%2F2023-2024-project-3-virtual-processor-team-2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falgosup%2F2023-2024-project-3-virtual-processor-team-2/lists"}