2024-07-26 12:50:47 +02:00
|
|
|
import mem
|
|
|
|
import sys
|
|
|
|
|
2025-02-17 14:31:47 +01:00
|
|
|
number(x int) {
|
|
|
|
buffer := mem.alloc(20)
|
|
|
|
address, count := itoa(x, buffer)
|
2024-08-05 12:39:07 +02:00
|
|
|
sys.write(1, address, count)
|
2025-02-09 23:52:07 +01:00
|
|
|
mem.free(buffer)
|
2024-07-30 20:02:55 +02:00
|
|
|
}
|
|
|
|
|
2025-02-21 11:27:45 +01:00
|
|
|
itoa(x int, buffer []byte) -> (*any, int) {
|
2025-02-17 14:31:47 +01:00
|
|
|
end := buffer + len(buffer)
|
2024-08-05 12:39:07 +02:00
|
|
|
tmp := end
|
2024-07-26 12:50:47 +02:00
|
|
|
digit := 0
|
|
|
|
|
|
|
|
loop {
|
|
|
|
x, digit = x / 10
|
|
|
|
tmp -= 1
|
|
|
|
tmp[0] = '0' + digit
|
|
|
|
|
|
|
|
if x == 0 {
|
2024-08-05 12:39:07 +02:00
|
|
|
return tmp, end - tmp
|
2024-07-26 12:50:47 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|