Как это работает с [si] и всякими ds:bx? Например у меня стоит задача превратить число в текст: ; in: ax - number ; out: ds:bx - text ; cx - number of digits itoa proc ... itoa endp Именно с такой спецификацией. Допустим number of digits я уже правильно посчитал. Я делаю так: itoa proc push ax push bx push dx mov si, cx ; index to the end mov bx, 10 ; dividing by 0 mov [si], 0 ; 0 to the end dec si get_digit: xor dx, dx ; zero dx before dividing div bx add dl, 48 ; digit -> char dec si mov [si], dl or ax, ax jnz get_digit pop dx pop bx pop ax ret itoa endp И что теперь мне с этим [si] делать? Где вообще это [si]? Если я буду иметь char[] в виде: .data text1 db 512 dup(?) То если: mov ax, @data mov ds, ax mov dx, offset text1 То это я могу понять. Теперь под ds:dx мой text1. Но какое это имеет отношение к [si]? Как [si] относится к text1 и к ds:dx? Как все это в памяти соотносится? И как скопировать содержимое [si] в text1? А как в ds:bx? И верно ли что я делаю так: mov si, cx ; index to the end где cx = number of digits? Или я вообще где-то совсем не прав?
Ответ на:
комментарий
от dissident
Ответ на:
комментарий
от redgremlin
Ответ на:
комментарий
от mv
Ответ на:
комментарий
от redgremlin
Ответ на:
комментарий
от mv
Ответ на:
комментарий
от mv
Ответ на:
комментарий
от mv
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от mv
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Проблема с выбором пунктов меню (2018)
- Форум Бесконечный цикл в TASM (8086) (2020)
- Форум Компоновщик ассемблера ругается (2023)
- Форум NASM, GDB, LD (2012)
- Статьи Линукс, ассемблер и X11 (2023)
- Форум Отлаживаю кодогенератор (2021)
- Форум asm 16bit + dos + es:ds (2008)
- Форум some more asm+dos ;) (2008)
- Форум Драйвер чтения и записи (2013)
- Форум Asm (2003)