Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Строки в ассемблере

62K
14 декабря 2010 года
vaselo
6 / / 09.11.2010
Помогите в решении программы: выполнить перестановку и+1 элемента с и-1
строка должна быть считана с клавиатуры. при этом посчитать кол. перестановок, и посчитать сумму кодов парных знаков в строке. смог только это перестановку. я так понял из литературы, что первых 2 элта строки - макс. размер и размер строки, то:
Код:
sseg    segment stack 'stack'               ;завдання сегменту пам'яті, виділення памяті  
    db 128 dup(?)                  
sseg    ends           

dseg    segment 'data'                      ;Завдання сегмента данних  
    text1 db 'Програма стартувала',13,10,'$'
    text2 db 'Введіть ваш рядок' '$'
    text3 db 'Початковий рядок: ','$'
    text4 db 'Результат','$'
    sum  dw 0d                      ;Сума кодів знаків
    mas db 'Текст, який потрібно перетворити'
    n db ?                          ;Довжина рядка
    kol db 0                            ;Счетчик на кількість перестановок
dseg ends

;------------------------------------ Текст   програми -----------------------------------
cseg     segment 'code'                                  ; Завдання сегмента команд
            assume  cs:cseg, ds:dseg, ss:sseg    ;Встановлення відповідності між cегментними
                                    ;регістрами (cs,ds,ss) і
                                    ;програмними сегментами (cseg,dseg,sseg)
  start proc far                                        ;Початок процедури start (точка входу - start)
          mov   ax, dseg                                ;Ініціалізація сегментного регістра ds на
          mov   ds, ax                                  ;програмний сегмент даних dseg
;---------------------------------------------------------------------------------------------------------------------------
     m1:  lea   dx, text1           ; Завантажування  у  регістр  dx із сегмента даних адреси
                                            ; першого  байта  текста  text1
          call  WrStr               ;Звернення до процедури WrStr виведення на екран текста text1
          mov   dx, offset text2    ;Завантажування  у  регітр  dx із сегмента даних адреси
                                            ; першого  байта  текста  text2
          call  WrStr               ;Звернення до процедури WrStr виведення на екран текста text2

;----------------------------------------------------------------------------------------------------------------------------
cykl:       mov al,a[si-1]
        mov ah,a[si+1]
        mov a[si-1],ah
        mov a[si+1],al
        inc kol
        loop cykl
252
17 декабря 2010 года
koderAlex
1.4K / / 07.09.2005
формат строки нам не известен . реализация функции WrStr не написана .
мы не телепаты )
остальное - непонятный бред .
260
18 декабря 2010 года
Ramon
1.1K / / 16.08.2003
Цитата: koderAlex
формат строки нам не известен . реализация функции WrStr не написана .
мы не телепаты )
остальное - непонятный бред .


Отчего же, все ясно, человек пытается решить агрономическую задачу о поле с кукурузой и количестве початков на нем:D.

PS: Хоть бы примеры входа/выхода черного ящика бы привели.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог