Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 05.05.2013
Сообщений: 25

Составить алгоритм и программу занесения в область памяти 2100H-2150H последовательность чисел от 0H до 50H

05.05.2013, 19:51. Показов 2433. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача такова:
Составить алгоритм и программу занесения в область памяти 2100H-2150H последовательность чисел от 0H до 50H.
Я написал такое:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Assume cs text, ds data
myproc proc
mov AX, Data
mov DS, AX
mov BX, 2100H
mov CX, 50
A1:
mov BYTE PTR(ax), 1h
inc BX
loop A1
mov ax, 4c00b
int 21h
myproc endp
text ends
data segment
data ends
end myproc
Но он ругается на mov ax, 4c00b
Может быть что-то исправить? Помогите
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.05.2013, 19:51
Ответы с готовыми решениями:

Составить программу занесения в динамическую память вещественного массива
Составить программу занесения в динамическую память вещественного массива из 10000 чисел хранящихся в файле на магнитном диске, а также...

Составить программу по которой компьютер генерирует последовательность из 10 случайных чисел и подсчитать сумму четных чисел
2. Составить программу по которой компьютер генерирует последовательность из 10 случайных чисел и подсчитать сумму четных чисел ...

Ввести последовательность целых чисел, пока не введете 0. Составить программу нахождения среднего арифметического чисел,
Задача : Ввести последовательность целых чисел, пока не введете 0. Составить программу нахождения среднего арифметического чисел, кратных...

14
780 / 412 / 75
Регистрация: 29.03.2013
Сообщений: 854
05.05.2013, 19:59
Цитата Сообщение от vibraxo Посмотреть сообщение
Но он ругается на mov ax, 4c00b
Может быть что-то исправить? Помогите
Написать:
Code
1
mov ax, 4c00h
0
0 / 0 / 0
Регистрация: 05.05.2013
Сообщений: 25
05.05.2013, 20:09  [ТС]
Теперь ошибка тут : Assume cs text,ds data
0
780 / 412 / 75
Регистрация: 29.03.2013
Сообщений: 854
05.05.2013, 20:20
Цитата Сообщение от vibraxo Посмотреть сообщение
Теперь ошибка тут : Assume cs text,ds data
Синтаксис директивы ASSUME
0
0 / 0 / 0
Регистрация: 05.05.2013
Сообщений: 25
05.05.2013, 20:28  [ТС]
Я совсем новичек в этом и не сильно умею.
Вот я изменил - ASSUME CS:TEXT DS: DATA, но всё равно ошибка
0
780 / 412 / 75
Регистрация: 29.03.2013
Сообщений: 854
05.05.2013, 21:10
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
.MODEL SMALL
.CODE
myproc  proc
        mov     AX, @DATA
        mov     DS, AX
        mov     BX, 2100H
        mov     CX, 50h
        mov     al, 0
A1:
        mov     [bx], al
        inc     al
        inc     BX
        loop    A1
        mov     ax, 4c00h
        int     21h
myproc  endp
.DATA
.STACK  128
        end myproc
0
0 / 0 / 0
Регистрация: 05.05.2013
Сообщений: 25
06.05.2013, 01:33  [ТС]
Мне нужно это сделать на очень древнем ассемблере. Такой вариант новизны не подойдет(
Ассемблер нужен вот такой( не сочтите за рекламу) + досбокс.
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
06.05.2013, 04:39
vibraxo,
  1. на следующем шаге ты обнаружишь что программа "заругается" на команду "mov BYTE PTR(ax), 1h"
  2. после исправления команды на mov byte ptr [bx],1 выяснится, что область памяти заполнена единицами, а не "последовательностью чисел от 0H до 50H."
  3. следующее исправление приведет к тому что окажется, что программа работает с диапазоном от 2100H-2131H, а не как было указано в условии 2100H-2150H
  4. и т.д.
1
780 / 412 / 75
Регистрация: 29.03.2013
Сообщений: 854
06.05.2013, 07:12
Цитата Сообщение от vibraxo Посмотреть сообщение
Мне нужно это сделать на очень древнем ассемблере. Такой вариант новизны не подойдет(
Ассемблер нужен вот такой( не сочтите за рекламу) + досбокс.
Borland Turbo Pascal это хорошо, конечно, но какое отношение он имеет к ассемблеру?
Я подозреваю, что используется какая-то версия Turbo Assembler. Какая именно? Это можно узнать запустив файл tasm.exe, например так:
Code
1
tasm.exe > tasm.txt
Приведённая выше строка с командой создаст на диске файл tasm.txt, в первой же строчке которого будет указана версия. vibraxo, будет очень любезно с твоей стороны или выложить сюда первую строчку из данного файла, или напечатать номер версии, которая там указана, во избежании дальнейших недоразумений.
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
06.05.2013, 07:19
Каким бы "древним" tasm не был, директиву .model он обязан поддерживать и код приведенный Argogo в топике #6 рабочий и должен устроить и ТАСМ и твоего преподавателя, и еще подскажи ему, что модели памяти и упрощенные директивы сегментации используют уже более сорока лет ("а мужики-то и не знают" )
1
0 / 0 / 0
Регистрация: 05.05.2013
Сообщений: 25
06.05.2013, 15:34  [ТС]
Mikl___, проблема в том, что мы .model, .CODE и т.д не проходили.
Argogo, мне сказали, что в этой версии и есть сам ассемблер.
Я в ассемблере ничего не понимаю. Мне сказали, что в моей программе не указаны сегменты еще.
Было бы неплохо твою программу на новую версию ассемблера преобразовать в одну из 1-х версий ассемблера. Где-то 1992 года.
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
06.05.2013, 16:33
vibraxo,
проблема в том, что студенты не любят читать учебники, даже под страхом отчисления. Читай и начнешь понимать. И было бы неплохо чтобы ты сам начал писать программы. Кстати, Argogo просил прислать версию твоего ассемблера и даже написал как это нужно сделать.
0
0 / 0 / 0
Регистрация: 05.05.2013
Сообщений: 25
06.05.2013, 17:25  [ТС]
Mikl___, я написал то, что в 1 посте и то не правильно. Поэтому я попросил помощи, чтобы исправили ошибки
5 версия у меня
0
780 / 412 / 75
Регистрация: 29.03.2013
Сообщений: 854
06.05.2013, 17:39
vibraxo, я тебя плохо понимаю. Вот код, если не подойдёт, то мне очень жаль:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Cseg    SEGMENT PARA PUBLIC 'code'
        ASSUME  CS:Cseg, DS:Dseg, SS:Sseg
myproc  proc
        mov     AX, Dseg
        mov     DS, AX
        mov     BX, offset _datas
        mov     CX, 50h
        mov     al, 0
A1:
        mov     [bx], al
        inc     al
        inc     BX
        loop    A1
        mov     ax, 4c00h
        int     21h
myproc  endp
Cseg    ENDS
;-------------------
Dseg    SEGMENT PARA 'data'
        ORG     2100h
_datas  db      50h dup(?)
Dseg    ENDS
;-------------------
Sseg    SEGMENT PARA STACK 'Stack'
        dw      64 dup(0)
Sseg    ENDS
;-------------------
        end myproc
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
07.05.2013, 05:19
Argogo,
более быстрое решение
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
; masm dos exe #
.286
.model small
.data
x db 50h dup (?)
.code
.386
start:  mov ax,@data
    mov es,ax
    mov di,offset x
    mov cx,50h/4
    mov eax,3020100h
a:  stosd
    add eax,4040404h
    loop a
    mov ah,4Ch
    int 21h
end start
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.05.2013, 05:19
Помогаю со студенческими работами здесь

Составить программу, проверяющую, является ли последовательность из 10 целых чисел
Составить программу, проверяющую, является ли последовательность из 10 целых чисел, вводимых с клавиатуры, возрастающе

Составить алгоритм и программу подсчета чисел
Пожалуйста!подскажите как реить задачу v.Basic.Составить алгоритм и программу (без использования массивов), которые в числовую переменную N...

Составить программу которая печатает последовательность из 10 натуральных случайных чисел
ПОМОГИТЕ,составить программы которая печатает последовательность из 10 натуральных случайных чисел принадлежащих промежутку от 12 до 24

Продолжить последовательность и составить программу, печатающую N чисел данной последовательности:
21, 20, 18, 15, 11, 6, ___, ___

Составить программу подсчёта положительных чисел, входящих в заданную последовательность
Задана последовательность чисел а1, а2, а3, а4. Составить программу подсчёта положительных чисел, входящих в заданную последовательность


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru