kernel/inc/utils/math.h

24 lines
627 B
C

// This file is part of noxos and licensed under the MIT open source license
#ifndef NOX_MATH_H
#define NOX_MATH_H
#include "stdtypes.h"
#include "string.h"
#define MAX(a, b) ((a) > (b) ? (a) : (b))
#define MIN(a, b) ((a) > (b) ? (b) : (a))
#define CEIL_TO(a, b) ((a) % (b) ? (a) + (b) - ((a) % (b)) : (a))
#define FLOOR_TO(a, b) ((a) - ((a) % (b)))
typedef struct {
uint64_t x;
uint64_t y;
} position_T;
uint64_t pow (uint64_t base, uint64_t exp);
uint64_t abs (int64_t n);
uint64_t octal_string_to_int (string_t string, uint8_t size);
#endif //NOX_MATH_H