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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2013, 21:20   #1
camel5
Пользователь
 
Аватар для camel5
 
Регистрация: 10.11.2013
Сообщений: 28
По умолчанию Готовые программы.

Мои первые программы на ассемблере:
1)X - двойное слово. необходимо переставить местами оба слова двойного слова X.
Код:
.model small
.stack 100h
.data
x DD 12345678h
.code
START: mov ax, @data
             mov ds, ax
             mov ax, word ptr[x]
             mov bx, word ptr[x+4]
             mov word ptr[x], bx
             mov word ptr[x+4], ax
             mov ah, 4ch
             int 21h
END START
или
Код:
.model small
.stack 100h
.data
x DD 12345678h
.code
START: mov ax, @data
             mov ds, ax
             rol da, 16
             xor ax,ax
             mov ax, 4c00h
             int 21h
END Start
2) Даны числа X, Y - двойные слова. Вычислить Z=X-Y.
Код:
.model small
.stack 100h
.data
WORDA DW 1221h
WORDB Dw 4553h
WORDC DW 
.code
START: mov ax, @data
       mov ds, ax
       mov ax, wordA
       mov bx, wordB
	   sub ax, bx
	   sub ax,wordC
	   sub wordA, bx
	   sub bx,100h
	   sub wordA, 256h
	   RET
END START
3)Даны числа X-слово, Y-байт.Вычислить Z=X*Y.
Код:
.model small
.stack 100h
.data
BYTE1 DB 1110
WORD1 DW 4c00h
 .code
START: mov ax, @data
       mov ds, ax
	   mov al, BYTE1
	   sub ah,ah
	   mul WORD1
	   RET
END START
camel5 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск