{"id":23101178,"url":"https://github.com/carusel02/assembly-problems","last_synced_at":"2025-06-17T10:38:35.588Z","repository":{"id":91694784,"uuid":"491559410","full_name":"Carusel02/Assembly-problems","owner":"Carusel02","description":"Easy-level-problems in Assembly","archived":false,"fork":false,"pushed_at":"2022-10-18T19:28:04.000Z","size":270,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-09T09:15:19.294Z","etag":null,"topics":["assembly","distance-calculation","encode","spiral-matrix"],"latest_commit_sha":null,"homepage":"","language":"Assembly","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/Carusel02.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":"2022-05-12T14:59:16.000Z","updated_at":"2022-10-18T19:33:36.000Z","dependencies_parsed_at":"2023-03-05T04:30:32.975Z","dependency_job_id":null,"html_url":"https://github.com/Carusel02/Assembly-problems","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/Carusel02%2FAssembly-problems","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Carusel02%2FAssembly-problems/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Carusel02%2FAssembly-problems/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Carusel02%2FAssembly-problems/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Carusel02","download_url":"https://codeload.github.com/Carusel02/Assembly-problems/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247078865,"owners_count":20879953,"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":["assembly","distance-calculation","encode","spiral-matrix"],"created_at":"2024-12-16T23:50:34.234Z","updated_at":"2025-04-03T21:18:13.108Z","avatar_url":"https://github.com/Carusel02.png","language":"Assembly","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Assembly\n\n## Implementation\n\n### task1 \n- the idea of `task1` is to extract each letter in an `8-bit register` and effectively encode it by collecting the step data value in the `register`\n### task2\n- the idea in `task2` part 1 is to find the line on which the points are located, (check if the x or y coordinates are equal) and decreasing the remaining coordinates\n- the idea in `task2` part 2 is to call the function from part 1 and add it to a vector of distances,then increasing its address\n- the idea in `task2` part 3 is to take an index and find out its square using either `loop` or `jump` , then the comparison with the element in the distance vector\n### task3\n- the idea of `task3` is similar to that of `task1` , both letters are taken from plain and key and using an algorithm resulting from the `tabular matrix`,\nadd the resulting letter in `enc_string`. \n\nThe algorithm can be presented as follows:\n- if the letter in `plain \u003c key`, it is subtracted in the `ascii code` key - plain and 65 is added\n- if the letter in `plain \u003e `key, their difference is subtracted from 26 and 65 is added.\n- also, an area is needed to `refresh` and forget the address of the key in case the string is longer than this\n### task4\n- the idea of `task4` is to generate the indexes corresponding to the `spiral matrix` by using jumps in `4 areas` where the spiral matrix is traversed\n(`top side` area, then `right side`, then `bottom side`, `left side` and then `repeat`).\n- a `zone` must also be implemented that decreases the number of steps taken to traverse the zones, because the more the spiral progresses, the more it decreases in ***\"dimension\"***.\n- then it is taken from the address where the `key matrix` is with the generated index and adding it to the `letter plain`, everything is put at the address where the string must be encoded.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarusel02%2Fassembly-problems","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcarusel02%2Fassembly-problems","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarusel02%2Fassembly-problems/lists"}