{"id":21009499,"url":"https://github.com/memgonzales/binary-multiplication","last_synced_at":"2025-12-28T22:03:31.482Z","repository":{"id":112379538,"uuid":"440598233","full_name":"memgonzales/binary-multiplication","owner":"memgonzales","description":"Interactive website for demonstrating or simulating binary multiplication via pencil-and-paper method, Booth's algorithm, and extended Booth's algorithm (bit-pair recoding)","archived":false,"fork":false,"pushed_at":"2022-12-22T10:42:46.000Z","size":1931,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-20T11:11:33.332Z","etag":null,"topics":["binary-multiplier","binary-numbers","bit-pair-recoding","booths-algorithm","computer-architecture","educational","extended-booths-algorithm","modified-booth-algorithm","modified-booth-encoding","radix-4","visualization","visualization-tool"],"latest_commit_sha":null,"homepage":"https://binary-multiply.vercel.app","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/memgonzales.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-12-21T17:26:33.000Z","updated_at":"2023-04-22T11:30:11.000Z","dependencies_parsed_at":"2023-05-14T05:15:13.301Z","dependency_job_id":null,"html_url":"https://github.com/memgonzales/binary-multiplication","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fbinary-multiplication","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fbinary-multiplication/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fbinary-multiplication/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fbinary-multiplication/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/memgonzales","download_url":"https://codeload.github.com/memgonzales/binary-multiplication/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243431251,"owners_count":20289863,"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":["binary-multiplier","binary-numbers","bit-pair-recoding","booths-algorithm","computer-architecture","educational","extended-booths-algorithm","modified-booth-algorithm","modified-booth-encoding","radix-4","visualization","visualization-tool"],"created_at":"2024-11-19T09:17:00.373Z","updated_at":"2025-12-28T22:03:26.425Z","avatar_url":"https://github.com/memgonzales.png","language":"JavaScript","readme":"# Binary Multiplication Simulator\n\n![badge][badge-html5]\n![badge][badge-js]\n![badge][badge-jquery]\n![badge][badge-prettier]\n![Vercel](https://therealsujitk-vercel-badge.vercel.app/?app=binary-multiply)\n\nThis project is an interactive website for demonstrating or simulating **signed binary multiplication** via three methods:\n\n-   Pencil-and-paper method\n-   Booth's algorithm\n-   Extended Booth's algorithm (also known as *modified Booth's algorithm*, *radix-4 Booth's algorithm*, or *bit-pair recoding*)\n\nThis website is a major course output in a computer organization and architecture class under Mr. Roger Luis T. Uy of the Department of Computer Technology, De La Salle University. The following are its key features:\n\n-   Support for both decimal and binary number input, up to a maximum of 16 bits (minimum: \u0026ndash;2\u003csup\u003e15\u003c/sup\u003e = \u0026ndash;32768, maximum: 2\u003csup\u003e15\u003c/sup\u003e \u0026ndash; 1 = 32767)\n-   Option to switch between demonstrating each step one at a time and displaying all the steps at once\n-   Playback controls for navigating through the step-by-step demonstration\n-   Exporting of step-by-step demonstration to a text file\n\n💡 **UPDATE (12/22/2022): With the shutting down of free Heroku services, we have migrated to Vercel: https://binary-multiply.vercel.app/**\n\n## Project Structure\n\nThis project consists of the following folders:\n\n| Folder                                                                                | Description                   |\n| ------------------------------------------------------------------------------------- | ----------------------------- |\n| [`assets`](https://github.com/memgonzales/binary-multiplication/tree/master/assets)   | Contains the image files      |\n| [`scripts`](https://github.com/memgonzales/binary-multiplication/tree/master/scripts) | Contains the JavaScript files |\n| [`style`](https://github.com/memgonzales/binary-multiplication/tree/master/style)     | Contains the CSS style sheets |\n\nIt also includes the following files:\n\n| File                                                                                              | Description                                                 |\n| ------------------------------------------------------------------------------------------------- | ----------------------------------------------------------- |\n| [`composer.json`](https://github.com/memgonzales/binary-multiplication/blob/master/composer.json) | Contains the list of dependencies of the PHP project        |\n| [`Procfile`](https://github.com/memgonzales/binary-multiplication/blob/master/Procfile)           | Specifies the commands run by the project's dynos on Heroku |\n| [`index.html`](https://github.com/memgonzales/binary-multiplication/blob/master/home.html)        | Home (main) page of the website                             |\n| [`index.php`](https://github.com/memgonzales/binary-multiplication/blob/master/index.php)         | Entry point of the PHP project                              |\n\n## Running the Simulator\n\n### User Manual\n\nFor detailed instructions on how to use this simulator, you may refer to our [user manual](https://github.com/memgonzales/binary-multiplication/blob/master/User%20Manual.pdf). \n\n### Running on the Web\n\nOpen the following website: https://binary-multiply.vercel.app/\n\n### Running Locally\n\n1. Create a copy of this repository:\n\n    - If [git](https://git-scm.com/downloads) is installed, type the following command on the terminal:\n\n        ```\n        git clone https://github.com/memgonzales/binary-multiplication\n        ```\n\n    - If git is not installed, click the green `Code` button near the top right of the repository and choose [`Download ZIP`](https://github.com/memgonzales/binary-multiplication/archive/refs/heads/master.zip). Once the zipped folder has been downloaded, extract its contents.\n\n2. Open [`index.html`](https://github.com/memgonzales/binary-multiplication/blob/master/index.html).\n\n    - There is no need to install any additional software or dependency. However, internet connection is required to load fonts, libraries, and toolkits from their respective content delivery networks (CDNs).\n\n\u003cbr\u003e\n\n   \u003cimg src=\"https://github.com/memgonzales/binary-multiplication/blob/master/screenshots/screenshot1.PNG?raw=True\" alt=\"Pencil-and-paper method\" width = 750\u003e \u003cbr\u003e\n   \n   \u003cimg src=\"https://github.com/memgonzales/binary-multiplication/blob/master/screenshots/screenshot2.PNG?raw=True\" alt=\"Extended booth's algorithm\" width = 750\u003e \u003cbr\u003e\n   \n   \u003cimg src=\"https://github.com/memgonzales/binary-multiplication/blob/master/screenshots/screenshot3.PNG?raw=True\" alt=\"Booth's algorithm\" width = 750\u003e \u003cbr\u003e\n\n\n## Built Using\n\nThis project uses **JavaScript** to carry out all the operations and computations on the client-side. Additional libraries and toolkits are enumerated in the following table:\n\n| Library/Toolkit                                                            | Version | Description                                                                                                                  | License                                                                        |\n| -------------------------------------------------------------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |\n| [jQuery](https://jquery.com/)                                              | 3.5.1   | Fast, small, and feature-rich JavaScript library for HTML document traversal and manipulation, event handling, and animation | MIT License                                                                    |\n| [Font Awesome](https://fontawesome.com/)                                   | 4.7.0   | Front-end toolkit featuring vector icons and social logos                                                                    | CC BY 4.0 License (Icons)\u003cbr\u003eSIL OFL 1.1 License (Fonts)\u003cbr\u003eMIT License (Code) |\n| [Google Fonts](https://fonts.google.com/)                                  | -       | Font embedding service library featuring free and open-source fonts                                                          | Apache License 2.0                                                             |\n| [Material Design](https://developers.google.com/fonts/docs/material_icons) | -       | Library for the design system developed by Google for Android, iOS, Flutter, and the web                                     | Apache License 2.0                                                             |\n\n_The descriptions of these technologies are taken from their respective websites._\n\nThe opinionated code formatter [Prettier](https://prettier.io/) was employed to enforce uniformity and consistency of coding style.\n\nThe website was refactored into a PHP application for faster and lightweight deployment on [Heroku](https://dashboard.heroku.com/), a cloud platform as a service (PaaS).\n\n💡 **UPDATE (12/22/2022):** With the shutting down of free Heroku services, we have migrated to [Vercel](https://vercel.com/), another cloud PaaS.\n\n## Authors\n\n-   \u003cb\u003eLander Peter E. Cua\u003c/b\u003e \u003cbr/\u003e\n    lander_peter_cua@dlsu.edu.ph \u003cbr/\u003e\n    landercua@gmail.com \u003cbr/\u003e\n-   \u003cb\u003eJacob Bryan B. Gaba\u003c/b\u003e \u003cbr/\u003e\n    jacob_bryan_gaba@dlsu.edu.ph \u003cbr/\u003e\n    jacob.gaba20@gmail.com \u003cbr/\u003e\n-   \u003cb\u003eMark Edward M. Gonzales\u003c/b\u003e \u003cbr/\u003e\n    mark_gonzales@dlsu.edu.ph \u003cbr/\u003e\n    gonzales.markedward@gmail.com \u003cbr/\u003e\n-   \u003cb\u003eHylene Jules G. Lee\u003c/b\u003e \u003cbr/\u003e\n    hylene_jules_lee@dlsu.edu.ph \u003cbr/\u003e\n    lee.hylene@gmail.com\n\nAssets (images) are properties of their respective owners. Attribution is found in the [credits](https://github.com/memgonzales/binary-multiplication/blob/master/CREDITS.md) file.\n\n[badge-html5]: https://img.shields.io/badge/html5-%23E34F26.svg?style=flat\u0026logo=html5\u0026logoColor=white\n[badge-js]: https://img.shields.io/badge/javascript-%23323330.svg?style=flate\u0026logo=javascript\u0026logoColor=%23F7DF1E\n[badge-jquery]: https://img.shields.io/badge/jquery-%230769AD.svg?style=flat\u0026logo=jquery\u0026logoColor=white\n[badge-php]: https://img.shields.io/badge/PHP-777BB4?style=flate\u0026logo=php\u0026logoColor=white\n[badge-prettier]: https://img.shields.io/badge/prettier-1A2C34?style=flat\u0026logo=prettier\u0026logoColor=F7BA3E\n[badge-heroku]: https://img.shields.io/badge/Heroku-430098?style=flat\u0026logo=heroku\u0026logoColor=white\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmemgonzales%2Fbinary-multiplication","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmemgonzales%2Fbinary-multiplication","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmemgonzales%2Fbinary-multiplication/lists"}