Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm для начинающих > Tasm


Автор: Александра1 24.10.2010, 12:35
Помогите,пожалуйста, написать программу под XP,с использованием компилятора tasm,  разобраться в этом языке, решением этого примера:z=(a+b)*2+14 ,хотелось бы увидеть,как это будет выглядеть.
...вот мои пробы,но пишет-ошибки..

.model small
.stack 100h
.data
;z=(a+b)*2+14
a db 1
b db 2
z db 0
.code
begin:
mov ax,@data
mov ds,ax
xor ax,ax
mov al,a
add al,b;
mul 2
mov z,ax
add ax,14
mov z,ax
mov ax,4ch
int 21h
end begin
end

Автор: Logree 24.10.2010, 13:14
Код

.model small
.stack 100h
.data
;z=(a+b)*2+14
a db 1
b db 2
z dw 0
.code
begin:
mov ax,@data
mov ds,ax
xor ax,ax
mov al,a
add al,b;
mul 2
mov z,ax   ; z имеет размер 1 байт, ax 2 байта, 2 байта в 1 запихать нельзя под z нужно выделить слово;
add ax,14
mov z,ax
mov ax,4ch
int 21h
end begin
end

Автор: iff 24.10.2010, 16:42
Александра1,
1. Не забывайте пользоваться кнопкой КОД.
2. Хорошо было-бы указывать номера строк, в которых компилятор находит ошибки.
3. Название темы должно отражать ее суть. (нарушение п.1 правил форума)
4.
Код

.model small
.stack 100h
.data
;z=(a+b)*2+14
a db 1
b db 2
z db ?
.code
begin:
mov ax,@data
mov ds,ax
mov al,a
add al,b
shl al,1
add al,14
mov z,al
mov ax,4c00h
int 21h
end begin
end


Logree, вы нарушили п.2 правил форума (вы дали неверный ответ).

Автор: Logree 24.10.2010, 20:51
я исправил первое что бросилось в глаза,но знатоки же меня поправили smile (все ошибаются)


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)