Форум программистов, компьютерный форум, киберфорум
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Assembler FAQ для раздела Assembler, MASM, TASM Краткое содержание раздела F.A.Q. Общее что лучше почитать по ассемблеру? Как автоматизировать сборку ассемблерных программ Компиляторы и линкеры: Где скачать компилятор для ассемблера. Небольшое сравнение ассемблерных компиляторов JWasm(краткий экскурс) описание ключей ml.exe Написать программу, выводящую строку "Hello, World!" на экран https://www.cyberforum.ru/ assembler/ thread883314.html this system does not support fullscreen mode Assembler
this system does not support fullscreen mode В чем может быть ошибка?
Assembler Какое будет содержимое регистров после выполнения данного фрагмента программы Уважаемые форумчане! Подскажите пожалуйста каково буде содержание регистра ECX в десятичном формате после выполнения следующей программы: MOV ECX,28 CLD MOV AL,100 LEA EDI,STRING REPNE SCASB ---------------------------------------- STRING DB "Abcdefghijklmnop qrstuvwxyz" https://www.cyberforum.ru/ assembler/ thread882032.html Assembler проверка оборудования https://www.cyberforum.ru/ assembler/ thread881675.html
прошу помощи. напишите код с комментариями. заранее спасибо. для компьютера на своем рабочем столе определить: - тип компьютера; - версию MS-DOS; - число дисковых накопителей; - тип и число видеоадаптеров; - число периферийных устройств; - количество памяти;
Assembler Ассемблер.повторное нажатие клавиши и использование таймера
tasm Есть программа, в которой прорисовывается фигура и при нажатии любой клавиши должна начинаться смена цвета. Подскажите, пожалуйста, как сделать, чтобы при повторном нажатии той же клавиши или после 7 секунд смена цвета останавливалась Процедура смены цвета: changcv proc inc color call zvezda jmp changcv ret
Assembler Запрет на удаление файла https://www.cyberforum.ru/ assembler/ thread880013.html
Задача: Резидентная программа по горячей клавише выводит окно, в котором с помощью клавиш 'стрелка вверх' и 'стрелка вниз' выбирается режим работы с файлами, т.е. тип файлов, которые нельзя удалять. В случае попытки удалить файл с выбранным расширением, программа выдает сообщение. Предусмотреть возможность выгрузки программы и защиту от повторной загрузки. Состоит из двух программ: основной и...
Assembler Идентификация производителя монитора https://www.cyberforum.ru/ assembler/ thread879437.html
Здравствуйте, не первый день пытаюсь найти способ узнать (идентифицировать) производителя монитора. Например (из аиды64): ID монитора SAM0691 Программу нужно написать на TASM, нашёл только информацию по EnumDisplayDevices, но как реализовать не знаю, и ещё вычитал про прерывание INT 1Dh, но про него тоже не где нечего нет...
Assembler Графика MASM
Помогите доделать! не могу понять почему движение фигуры происходит только наискось, а должна влево вправо вверх и вниз. вроде все правильно но не работает, помогите разобраться... data segment col db ? horiz dw ? vert dw ?
Assembler Часы вторым каналом таймера https://www.cyberforum.ru/ assembler/ thread877963.html
Надо запилить часы с помощью второго канала системного таймера, именно второго, не используя нулевой, с его перерыванием. Где то на просторах интернета, нарыл код, просто стартуем канал в режиме 3, фиксируем значение регистра канала, отнимаем предыдущее значение от текущего, получаем разницу. Теперь в чем загвоздка - как узнать, с какой частотой декрементит свой счетчик второй канал таймера?
Assembler Связь ассемблера с Pascal https://www.cyberforum.ru/ assembler/ thread877335.html
Сформируйте массив, в котором соответствующий элемент является произведением элементов двух массивов. Помогитею.
Assembler Текстовый редактор - своя ОС
Доброго времени суток. Задача: написать загрузчик, который выбирал бы либо unix(win) или свою ОС + написать свою ОС - текстовый редактор где можно заменять и удалять участки текста. Загрузчик: ;Bootloader entry-code main: cli ;Clear interrupts
Assembler Как узнать откуда запущена программа? https://www.cyberforum.ru/ assembler/ thread875735.html
напишите пожалуйста код ассемблерной вставки для делфи, например функцию, определяющую откуда запущена программа Добавлено через 15 минут Format of environment block: Offset Size Description 00h N BYTEs first environment variable, ASCIZ string of form "var=value" N BYTEs second environment variable, ASCIZ string ... N BYTEs last environment variable, ASCIZ string of form...
4 / 4 / 1
Регистрация: 09.08.2010
Сообщений: 125
0

Что не так в этой программе? - Assembler - Ответ 4640960

30.05.2013, 09:09. Показов 2132. Ответов 5
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Требуется написать макрокоманду, аналогичную оператору IF в Паскале, для проверки числа в аккумуляторе. Если число отрицательное, то управление передать ячейке NEG, если оно равно 0, управление передать ячейке ZER, если же число положительное, управление передать ячейке POS. И написать программу.

Программу написал, но TASM ругается. Выдает ошибку:

**Error** new.ASM(34) MAKROS(2) Argument to operation or instruction has illegal size
**Error** new.ASM(34) MAKROS(3) Argument to operation or instruction has illegal size
**Error** new.ASM(34) MAKROS(4) Argument to operation or instruction has illegal size

Текст программы следующий:
Assembler
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
;Макрокоманда передачи управления ячейке памяти
makros macro reg
    cmp reg,0
    je z
    jl n
    jg p
endm
;----------------------------
;Резервирование места под стек
sseg segment stack 'stack'
    dw 256 dup(?)
sseg ends
;----------------------------
;Сегмент данных
data segment
    msgNeg db 10,13,'Negative!','$'
    msgZer db 10,13,'Zero!','$'
    msgPos db 10,13,'Positive!','$'
    n db offset goNeg
    z db offset goZer
    p db offset goPos
data ends
;----------------------------
;Сегмент кода
code segment
    assume cs:code,ds:data,ss:sseg
start:
    mov ax,data      ;настроить сегментный
    mov ds,ax        ;регистр DS на данные
    
    mov al,73h      ;заносим в аккумультор первое пришедшее в голову число
    neg al           ;инвертируем ax, чтобы показать переход с отрицательным числом, т.е. делаем -735 из 735  
    
    makros al        ;макрокоманда, которая проверяет содержимое аккумулятора и передает управление на ячейке памяти
    
goNeg:               ;будет выполняться, если число было отрицательным
    mov ah,09h       ;вывести на экран строку
    lea dx,msgNeg    ;хранящуюся в ячейке памяти
    int 21h          ;msgNeg
    jmp exit
goZer:               ;будет выполняться, если число было равно нулю
    mov ah,09h       ;вывести на экран строку
    lea dx,msgZer    ;хранящуюся в ячейке памяти
    int 21h          ;msgZer
    jmp exit
goPos:               ;будет выполняться, если число было положительным
    mov ah,09h       ;вывести на экран строку
    lea dx,msgPos    ;хранящуюся в ячейке памяти
    int 21h          ;msgPos
    jmp exit
exit:                ;метка выхода из программы
    mov ah,4Ch       
    int 21h
code ends
end start
Что не так? Что ему не нравится в размере операнда? Как правильно передать управление на одну из этих ячеек(n,z,p)?

Вернуться к обсуждению:
Что не так в этой программе? Assembler
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.05.2013, 09:09
Готовые ответы и решения:

Что не так в этой строке?
Сколько не жму F7 прога дальше никуда не идет. IMUL EBP,DWORD PTR DS:,FF800002

Что в этой программе не так?
была задача: Написать программу, в которой описывается массив записей, хранящий следующую...

что в этой программе не так?
procedure TForm1.Button1Click(Sender: TObject); var a:array of integer;i,p,m1:integer;m:string;...

Подскажите все ли так в этой программе!
//--------------------------------------------------------------------------- #include <vcl.h>...

5
30.05.2013, 09:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.05.2013, 09:09
Помогаю со студенческими работами здесь

Что в этой программе можно изменить (что бы улучшить) И как ее усовершенствовать ?
Program Kalkulator ; Label m1,m2; Var Operation,cal:byte; a,b:real; Begin m1:...

Что значит i в этой программе и что оно делает?
А что значит i в этой программе и что оно делает? clc,clear all...

Сделать так, чтобы атомы в этой программе перемешивались в определённом процентном соотношении?
Доброе утро! Как сделать так, чтобы атомы в этой программе перемешивались в определённом...

Как в этой программе изменить то что во вкладке "о программе"
Здравствуйте, уважаемый народ. Подскажите как в этой программе изменить то что во вкладке "о...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru