Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.01.2012, 17:16   #11
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
я ссылку давал.

вы вообще собираетесь чтото сами делать?
у вас идут банальнейшие вопросы 99% которых давно описаны в книгах.
простые же инструкции должны

Последний раз редактировалось TotKtoNado; 01.01.2012 в 17:38.
TotKtoNado вне форума Ответить с цитированием
Старый 01.01.2012, 17:18   #12
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

простые же инструкции должны

Последний раз редактировалось TotKtoNado; 01.01.2012 в 17:39.
TotKtoNado вне форума Ответить с цитированием
Старый 01.01.2012, 18:01   #13
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
я ссылку давал.

вы вообще собираетесь чтото сами делать?
у вас идут банальнейшие вопросы 99% которых давно описаны в книгах.
функция
Код:
div [_10]
а где первый операнд? И что это за нижнее подчеркивание внизу 10
TotKtoNado вне форума Ответить с цитированием
Старый 01.01.2012, 19:20   #14
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

вот процедура вывода:
Код:
;Їа®жҐ¤га* ўлў®¤*
output proc near  
;; Џа®ўҐа塞 зЁб«® ** §**Є.
        test    ax, ax
        jns     @oi1

;; …б«Ё ®*® ®ваЁж*⥫м*®Ґ, ўлўҐ¤Ґ¬ ¬Ё*гб Ё ®бв*ўЁ¬ ҐЈ® ¬®¤г«м.
	  push ax
        mov     ah, 02h
        mov     dl, '-'
        int     21h
        pop ax
        neg ax
        
;; Љ®«ЁзҐбвў® жЁда Ўг¤Ґ¬ ¤Ґа¦*вм ў CX.
@oi1:  
        xor     cx, cx
        mov     bx, 10
@oi2:   
       ;cwd
       xor dx,dx
       div bx
; „Ґ«Ё¬ зЁб«® ** ¤Ґбпвм. ‚ ®бв*вЄҐ Ї®«гз*Ґвбп Ї®б«Ґ¤*пп жЁда*.
; ‘а*§г ўлў®¤Ёвм Ґс *Ґ«м§п, Ї®н⮬г б®еа**Ё¬ Ґс ў бвнЄҐ.
        push    dx
        inc     cx
; Ђ б з*бв*л¬ Ї®ўв®а塞 в® ¦Ґ б*¬®Ґ, ®в¤Ґ«пп ®в *ҐЈ® ®зҐаҐ¤*го
; жЁдаг бЇа*ў*, Ї®Є* *Ґ ®бв**Ґвбп *®«м, зв® §**зЁв, зв® ¤*«миҐ
; б«Ґў* в®«мЄ® *г«Ё.
        test    ax, ax
        jnz     @oi2
; ’ҐЇҐам ЇаЁбвгЇЁ¬ Є ўлў®¤г.
        mov     ah, 02h
@oi3:   pop     dx
; €§ў«ҐЄ*Ґ¬ ®зҐаҐ¤*го жЁдаг, ЇҐаҐў®¤Ё¬ Ґс ў бЁ¬ў®« Ё ўлў®¤Ё¬.
        add     dl, 30h
        int     21h
; Џ®ўв®аЁ¬ а®ў*® бв®«мЄ® а*§, бЄ®«мЄ® жЁда **бзЁв*«Ё.
        loop    @oi3
	ret
endp output
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 01.01.2012, 21:35   #15
flance
Форумчанин
 
Регистрация: 31.05.2011
Сообщений: 184
По умолчанию

TotKtoNado
Нет такого готового функционала, нужно посимвольно обрабатывать строку, чтобы из кодов исмволов была составлена строка. А потом ее выводить.
Чтобы понять, представьте, что после обработки у вас будет что-то типа
helloasci db '72 101 108 108 ... $'
Вы это не увидите, конечно. Просто чтобы представить.

И потом выводить эту строку.
Пробелы нужны для читаемости. Можно и любой др. символ.

Если не получится, вы можете заказать. Например, мне.
Программист-фрилансер, готовый рассмотреть предложения на постоянную удаленную работу... Ответственный, трудолюбивый
telegram: flancejob

Последний раз редактировалось flance; 01.01.2012 в 21:46.
flance вне форума Ответить с цитированием
Старый 02.01.2012, 12:11   #16
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Sparky Посмотреть сообщение
вот процедура вывода:
Код:
;Їа®жҐ¤га* ўлў®¤*
output proc near  
;; Џа®ўҐа塞 зЁб«® ** §**Є.
        test    ax, ax
        jns     @oi1

;; …б«Ё ®*® ®ваЁж*⥫м*®Ґ, ўлўҐ¤Ґ¬ ¬Ё*гб Ё ®бв*ўЁ¬ ҐЈ® ¬®¤г«м.
	  push ax
        mov     ah, 02h
        mov     dl, '-'
        int     21h
        pop ax
        neg ax
        
;; Љ®«ЁзҐбвў® жЁда Ўг¤Ґ¬ ¤Ґа¦*вм ў CX.
@oi1:  
        xor     cx, cx
        mov     bx, 10
@oi2:   
       ;cwd
       xor dx,dx
       div bx
; „Ґ«Ё¬ зЁб«® ** ¤Ґбпвм. ‚ ®бв*вЄҐ Ї®«гз*Ґвбп Ї®б«Ґ¤*пп жЁда*.
; ‘а*§г ўлў®¤Ёвм Ґс *Ґ«м§п, Ї®н⮬г б®еа**Ё¬ Ґс ў бвнЄҐ.
        push    dx
        inc     cx
; Ђ б з*бв*л¬ Ї®ўв®а塞 в® ¦Ґ б*¬®Ґ, ®в¤Ґ«пп ®в *ҐЈ® ®зҐаҐ¤*го
; жЁдаг бЇа*ў*, Ї®Є* *Ґ ®бв**Ґвбп *®«м, зв® §**зЁв, зв® ¤*«миҐ
; б«Ґў* в®«мЄ® *г«Ё.
        test    ax, ax
        jnz     @oi2
; ’ҐЇҐам ЇаЁбвгЇЁ¬ Є ўлў®¤г.
        mov     ah, 02h
@oi3:   pop     dx
; €§ў«ҐЄ*Ґ¬ ®зҐаҐ¤*го жЁдаг, ЇҐаҐў®¤Ё¬ Ґс ў бЁ¬ў®« Ё ўлў®¤Ё¬.
        add     dl, 30h
        int     21h
; Џ®ўв®аЁ¬ а®ў*® бв®«мЄ® а*§, бЄ®«мЄ® жЁда **бзЁв*«Ё.
        loop    @oi3
	ret
endp output
буквы не понятные
TotKtoNado вне форума Ответить с цитированием
Старый 02.01.2012, 13:21   #17
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
;процедура вывода
output proc near  
;; Проверяем число на знак.
        test    ax, ax
        jns     @oi1

;; Если оно отрицательное, выведем минус и оставим его модуль.
	  push ax
        mov     ah, 02h
        mov     dl, '-'
        int     21h
        pop ax
        neg ax
        
;; Количество цифр будем держать в CX.
@oi1:  
        xor     cx, cx
        mov     bx, 10
@oi2:   
       ;cwd
       xor dx,dx
       div bx
; Делим число на десять. В остатке получается последняя цифра.
; Сразу выводить её нельзя, поэтому сохраним её в стэке.
        push    dx
        inc     cx
; А с частным повторяем то же самое, отделяя от него очередную
; цифру справа, пока не останется ноль, что значит, что дальше
; слева только нули.
        test    ax, ax
        jnz     @oi2
; Теперь приступим к выводу.
        mov     ah, 02h
@oi3:   pop     dx
; Извлекаем очередную цифру, переводим её в символ и выводим.
        add     dl, 30h
        int     21h
; Повторим ровно столько раз, сколько цифр насчитали.
        loop    @oi3
	ret
endp output
советую научиться перекодировать текст.

тем более вам же код нужен, а не текст.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 02.01.2012, 13:24   #18
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
Код:
;процедура вывода
output proc near  
;; Проверяем число на знак.
        test    ax, ax
        jns     @oi1

;; Если оно отрицательное, выведем минус и оставим его модуль.
	  push ax
        mov     ah, 02h
        mov     dl, '-'
        int     21h
        pop ax
        neg ax
        
;; Количество цифр будем держать в CX.
@oi1:  
        xor     cx, cx
        mov     bx, 10
@oi2:   
       ;cwd
       xor dx,dx
       div bx
; Делим число на десять. В остатке получается последняя цифра.
; Сразу выводить её нельзя, поэтому сохраним её в стэке.
        push    dx
        inc     cx
; А с частным повторяем то же самое, отделяя от него очередную
; цифру справа, пока не останется ноль, что значит, что дальше
; слева только нули.
        test    ax, ax
        jnz     @oi2
; Теперь приступим к выводу.
        mov     ah, 02h
@oi3:   pop     dx
; Извлекаем очередную цифру, переводим её в символ и выводим.
        add     dl, 30h
        int     21h
; Повторим ровно столько раз, сколько цифр насчитали.
        loop    @oi3
	ret
endp output
советую научиться перекодировать текст.

тем более вам же код нужен, а не текст.
я пробовал перекодировать
TotKtoNado вне форума Ответить с цитированием
Старый 02.01.2012, 13:26   #19
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
Код:
;процедура вывода
output proc near  
;; Проверяем число на знак.
        test    ax, ax
        jns     @oi1

;; Если оно отрицательное, выведем минус и оставим его модуль.
	  push ax
        mov     ah, 02h
        mov     dl, '-'
        int     21h
        pop ax
        neg ax
        
;; Количество цифр будем держать в CX.
@oi1:  
        xor     cx, cx
        mov     bx, 10
@oi2:   
       ;cwd
       xor dx,dx
       div bx
; Делим число на десять. В остатке получается последняя цифра.
; Сразу выводить её нельзя, поэтому сохраним её в стэке.
        push    dx
        inc     cx
; А с частным повторяем то же самое, отделяя от него очередную
; цифру справа, пока не останется ноль, что значит, что дальше
; слева только нули.
        test    ax, ax
        jnz     @oi2
; Теперь приступим к выводу.
        mov     ah, 02h
@oi3:   pop     dx
; Извлекаем очередную цифру, переводим её в символ и выводим.
        add     dl, 30h
        int     21h
; Повторим ровно столько раз, сколько цифр насчитали.
        loop    @oi3
	ret
endp output
советую научиться перекодировать текст.

тем более вам же код нужен, а не текст.
ругаеться
output proc near
TotKtoNado вне форума Ответить с цитированием
Старый 02.01.2012, 13:34   #20
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

я смотрю вам воообще лень думать... это процедура а не готовая программа.
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вывод на экран Nikolai_90 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 11 02.05.2012 09:25
Вывод на экран N простых чисел. Renge Помощь студентам 2 13.09.2011 18:53
Вывод на экран Timpi Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 30.11.2009 18:05
Вывод на 2-ой экран DShiller Общие вопросы Delphi 0 26.05.2008 15:25