{"id":16638152,"url":"https://github.com/osvegn/asm_mini_libc","last_synced_at":"2026-04-26T02:32:17.219Z","repository":{"id":210796231,"uuid":"727025453","full_name":"osvegn/asm_mini_libc","owner":"osvegn","description":null,"archived":false,"fork":false,"pushed_at":"2023-12-04T23:49:15.000Z","size":477,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-26T13:44:45.303Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/osvegn.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}},"created_at":"2023-12-04T02:53:49.000Z","updated_at":"2023-12-04T02:55:12.000Z","dependencies_parsed_at":"2023-12-05T00:46:10.239Z","dependency_job_id":null,"html_url":"https://github.com/osvegn/asm_mini_libc","commit_stats":null,"previous_names":["osvegn/asm_mini_libc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/osvegn/asm_mini_libc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/osvegn%2Fasm_mini_libc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/osvegn%2Fasm_mini_libc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/osvegn%2Fasm_mini_libc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/osvegn%2Fasm_mini_libc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/osvegn","download_url":"https://codeload.github.com/osvegn/asm_mini_libc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/osvegn%2Fasm_mini_libc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32284333,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-25T18:29:39.964Z","status":"online","status_checked_at":"2026-04-26T02:00:05.962Z","response_time":129,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2024-10-12T06:43:46.933Z","updated_at":"2026-04-26T02:32:17.204Z","avatar_url":"https://github.com/osvegn.png","language":"Assembly","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Assembly mini libc\n\n## Objectives\n- Learn assembly language\n- Create basic libc functions in assembly\n\n## Functions to create\n- [x] strlen\n- [x] strchr\n- [x] memset\n- [x] memcpy\n- [x] strcmp\n- [x] memmove\n- [x] strncmp\n- [ ] strcasecmp\n- [x] rindex\n- [x] strstr\n- [ ] strpbrk\n- [ ] strcspn\n\n## Documentation\n\n### Registers\n| 64-bit | 32-bit | 16-bit | 8-bit | USAGE |\n|--------|--------|--------|-------|-------|\n| RAX    | EAX    | AX     | AH-AL | return value \n| RBX    | EBX    | BX     | BH-BL |\n| RCX    | ECX    | CX     | CH-CL | arg4\n| RDX    | EDX    | DX     | DH-DL | arg3\n| RSI    | ESI    | SI     | SIL   | arg2\n| RDI    | EDI    | DI     | DIL   | arg1\n| RBP    | EBP    | BP     | BPL   |\n| RSP    | ESP    | SP     | SPL   | stack pointer\n| R8     | R8D    | R8W    | R8B   | arg5\n| R9     | R9D    | R9W    | R9B   | arg6\n| R10    | R10D   | R10W   | R10B  |\n| R11    | R11D   | R11W   | R11B  |\n| R12    | R12D   | R12W   | R12B  |\n| R13    | R13D   | R13W   | R13B  |\n| R14    | R14D   | R14W   | R14B  |\n| R15    | R15D   | R15W   | R15B  |\n\n### Instructions\n#### Data movement\n- mov DEST, SRC\n  move SRC to DEST\n\n#### Condition\n- cmp ELEM1, ELEM2\n  compare ELEM1 to ELEM2. Use a jmp condition to compare the result.\n\n#### Arithmetic\n- inc VAR\n  increment variable by 1\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fosvegn%2Fasm_mini_libc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fosvegn%2Fasm_mini_libc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fosvegn%2Fasm_mini_libc/lists"}