An open API service indexing awesome lists of open source software.

https://github.com/qluana7/asmlib

Collection of algorithms, data structures, and other functions implemented in assembly.
https://github.com/qluana7/asmlib

assembly assembly-x86 library presets

Last synced: 1 day ago
JSON representation

Collection of algorithms, data structures, and other functions implemented in assembly.

Awesome Lists containing this project

README

          




    Assembly Preset Library




Collection of algorithms, data structures, and other functions implemented in assembly.

## Features
- **Collection of assembly presets**: Includes algorithms, data structures, and implementations of functions.
- **Use of Netwide Assembly (NASM)**: Most of the code is written using NASM, targeting the x86_64 architecture.
- **Linking with GCC**: Designed with the assumption that linking will be performed using GCC.

## How to use
Copy the entire source from the file and paste it into your code. The `extern` part indicates the dependency functions required by the implementation. If there are `global` directives, ensure to utilize the functions associated with those directives; functions not designated as `global` in this case should be considered private. If there are no `global` directives, all functions will be considered public.

Here's template of main code.
```nasm
; Declare global variables required by some functions.
section .data
...

section .text
; Do not use the global directive for functions, as it is only intended to mark them as public.
; Example: global func (do not use this)

; Declare the main function as global
global main

; Declare extern functions required by the copied code from the repository
extern ...

; Additional extern dependencies
extern ...

; Add any required functions from the copied code here
dependency_func:
...

; Function implementation from the copied code
func:
...

; Main code execution
main:
...
```

## Contribute
Please submit a pull request while adhering to the rules outlined in the [RULES.md](https://github.com/qluana7/asmlib/blob/main/RULES.md)

## Collaborator
ku7431