Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Задания по ассемблеру 
:(
    Опции темы
Ura20007
Дата 16.5.2007, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 22.4.2007

Репутация: нет
Всего: 1



Всем приветик.Помогите пожалуйста с 3 задачами по ассемблеру

1)Написать программу преобразования числа в символ и наоборот(ASCII).

2)Написать программу,которая выводит на экран таблицу ASCII .

3)Программа создания,удаления ,переименования,чтения,открытия файла.

Если у кого-то остались листинги программы скиньте пожалуйста.Очень нужно!!!! 

Заранее огромное спасибо.

  

Это сообщение отредактировал(а) Ura20007 - 16.5.2007, 15:42
PM MAIL   Вверх
MAKCim
Дата 16.5.2007, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: нет
Всего: 207



Цитата(Ura20007 @  16.5.2007,  11:51 Найти цитируемый пост)
Написать программу,которая выводит на экран таблицу ASCII .

Код

ascii:
    push ds
    xor ax, ax
    mov ds, ax
    mov ax, 0x0F00
    mov bx, 0xB800
@@:
    mov word [bx], ax
    add bx, 2
    inc ax
    test ax, 0x1000
    jz @B
    pop ds


Это сообщение отредактировал(а) MAKCim - 16.5.2007, 23:04


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Ura20007
Дата 16.5.2007, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 22.4.2007

Репутация: нет
Всего: 1



И больше ничего не надо добавлять.А что с другими задачами?

Помогите пожалуйста!!!!!!!!!
PM MAIL   Вверх
dumb
Дата 16.5.2007, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 2
Всего: 158



MAKCim, понимаю, дос - не твое... smile да и не мое уже тоже - забыл уж почти все...

Код

    push es
    mov ax, 0b800h
    mov es, ax
    mov ax, 00F00h
    xor di, di
next: ; tasm @B/F не умеет...
    stosw
    inc al
    jnz next
    pop es


Ura20007, уважаемый, все свои задачи отправляй в Центр Помощи, так как сам ты делать ничего не будешь(и не пытаешься) - это очевидно.
PM MAIL   Вверх
MAKCim
Дата 16.5.2007, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: нет
Всего: 207



dumb
тогда уж cld добавить надо (на всякий случай)  smile 


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Ura20007
Дата 20.5.2007, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 22.4.2007

Репутация: нет
Всего: 1



Ребята,а как решить остальные задачи.
PM MAIL   Вверх
Annetka
Дата 4.6.2007, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 4.6.2007

Репутация: нет
Всего: нет



Привет! СРОЧНО нужна помощь! Спасайте!!!!!!нужно написать эту программу так,чтобы сердце появлялось на экране и им(этим изображением) можно было двигать с помощью стрелок по экрану(сердце не должно выходить за пределы экрана-так как оно сейчас является,) . Если возможно,с коментариями



Код

.MODEL TINY
.386
.CODE
assume cs:@code,ds:@code
org 100h
; Основная программа
main proc
mov ax,cs
mov ds,ax
mov ax,0a000h
mov es,ax
; Устанавливаем режим - 320x200
mov ax, 13h
int 10h
; Создаем палитру в 256 цветов
mov cx,255
palset:
push cx
mov bx,cx
shr cx,2
mov ch,cl
mov dh,cl
shl cl,3
shl dh,1
shr ch,1
mov ax,1010h
int 10h
pop cx
loop palset
; Цикл опроса клавиатуры
keycycle:
mov ax,mcol
add ax,dltc
cmp ax,10
jna resize
cmp ax,450
jna savemcol
resize:
not dltc
mov ax,mcol
savemcol:
mov mcol,ax
; Основной цикл расчета экрана
mov si,0
megacycle1:
mov di,0
megacycle2:
push di
push si
sub di,160
sub si,140
shl si,2
shl di,1
; Zi {BX} и Zr {CX}
mov cx,mcol
mov bx,mcol
; Цвет полагается равным 0
mov [col],0
fractcycle:
mov al,col
inc al
mov col,al
cmp al,20
jz output
; Считается промежуточное значение равное 2*Zi*Zr+Ci {X}
mov ax,cx
imul bx
shl ax,1
rcl dx,1
mov al,ah
mov ah,dl
add ax,di
xchg ax,bx
imul ax
mov al,ah
mov ah,dl
push ax
xchg ax,cx
imul ax
mov al,ah
mov ah,dl
push ax
sub ax,cx
add ax,si
mov cx,ax
pop ax
pop dx
add ax,dx
cmp ah,2
jna fractcycle
output:
mov al,col
shl al,3
add al,30
pop si
pop di
call plot
inc di
cmp di,320
jnz megacycle2
inc si
cmp si,200
jnz megacycle1
mov ah,0bh
int 21h
or al,al
jz keycycle
mov ax, 3
int 10h
mov ax,4c00h
int 21h
main endp
; Процедура установки точки - di- x, si- y, al- c
plot proc near
push di
mov bx,si
shl bx,6
add di,bx
shl bx,2
add di,bx
stosb
pop di
ret
plot endp
col db 1
mcol dw 450
dltc dw 0FFF7h
end main


Это сообщение отредактировал(а) MAKCim - 29.11.2007, 10:32
PM MAIL   Вверх
accessd
Дата 12.6.2007, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 23.3.2007

Репутация: нет
Всего: нет



Вот такая вот задачка:  
Реализовать средствами Assembler части интерфейса операционной системы отвечающей за ввод данных с консоли и преобразование их в целочисленный формат. Использовать данную реализацию для выполнения арифметических действий.
Прошу помочь..
PM MAIL   Вверх
stiv_nick
Дата 29.11.2007, 09:46 (ссылка)   | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 28.11.2007

Репутация: нет
Всего: нет



Помогите кто чем может. Нужно написать на ассемблере прогу находящую корни квадратного уравнения ах2+bx+с и вывести корни в делфи или паскаль (для этого создается dll библиотека). а, b, с водится с клавиатуры. Очень большая просьба к тому к то решит помочь текс на ассемблере должен быть как можно проще! так де вывожу в помощь подобный пример:
Листинг программы на Assembler:

Код

format PE console 4.0

entry start
include 'include/win32a.inc'

section '.idata' import data readable

library kernel,'KERNEL32.DLL'

import kernel,\
ReadConsole,'ReadConsoleA',\
WriteConsole,'WriteConsoleA',\
GetStdHandle,'GetStdHandle',\
ExitProcess,'ExitProcess',\
LoadLibrary,'LoadLibraryA',\
GetProcAddress,'GetProcAddress'
; Перечисляем процедуры, содержащиеся в библиотеке 'KERNEL32.DLL', которые мы будем использовать в нашей программе.

section '.data' data readable writeable

; сообщение к выводу перед вводом числа
Msg db "Enter the number: ",0
; буфер под строку с введенным числом
ResStr db 255 dup (0),0
; дескриптор стандартного потока вывода
hStdOut dd ?
; дескриптор стандартного потока ввода
hStdIn dd ?
; сколько байт прочитано
WrBytes dd ?
; имя библиотеки
dllFilename db "ExDouble.dll",0
; имя процедуры
ProcName db "Determinant",0
; дескриптор динамической библиотеки
hModule dd ?
; адрес функции динамической библиотеки
Determinant dd ?
; строка ошибки (нету библиотеки или имя процедуры не найдено)
LibErr db "Invalid library or library not found!",0


section '.code' code readable executable

start:

invoke GetStdHandle,STD_OUTPUT_HANDLE
mov [hStdOut],eax
invoke GetStdHandle,STD_INPUT_HANDLE
mov [hStdIn],eax

invoke LoadLibrary,dllFilename
mov [hModule],eax
test eax,eax
jz errexit

invoke GetProcAddress,[hModule],ProcName
mov [Determinant],eax
test eax,eax
jz errexit

invoke WriteConsole,[hStdOut],Msg,18,WrBytes,NULL

invoke ReadConsole,[hStdIn],ResStr,255,WrBytes,NULL

; заполнение последнего enter'a (это два байта 0x0D0A) нулем
mov esi,ResStr
add esi,[WrBytes]
sub esi,2
mov byte[esi],0

; передаем указатель на обработанную строку в процедуру динамической библиотеки
invoke Determinant,ResStr

; нормальный выход
exit:
invoke ExitProcess,0

; выход с ошибкой
errexit:
invoke WriteConsole,[hStdOut],LibErr,37,WrBytes,NULL
invoke ExitProcess,1




Листинг программы (код DLL библиотеки):

Код

library ExDouble; //Имя библиотеки

//Используемые модули
uses
Windows, SysUtils;

//Функция, вычисляющая детерминант

Function Determinant(a:matr;n:integer):longint;

type matr=array[1..10,1..10] of longint;
var a,b:matr;
i,j,dt,n:longint; ki,kj,di,dj, m,i,j:integer;

begin
randomize;
write('N= ');
readln(n);
for i:=1 to n do
for j:=1 to n do
a[i,j]:=random(5);
for i:=1 to n do
begin
for j:=1 to n do
write(m[i,j]:3);
writeln;
end;

d:=0; k:=1;
if (n<1) then
begin
writeln('Determinant: Cann''t run. N=',n); halt;
end;
if (n=1)
then d:=a[1,1]
else if (n=2)
then d:=a[1,1]*a[2,2]-a[2,1]*a[1,2]
else { n>2 }
for i:=1 to n do
begin
di:=0;
for ki:=1 to m-1 do
begin
if (ki=i) then di:=1;
dj:=0;
for kj:=1 to m-1 do
begin
if (kj=j) then dj:=1;
b[ki,kj]:=a[ki+di,kj+dj];
end;

d:=d+k*a[i,1]*Determinant(b,n-1);
k:=-k;
end;
Determinant:=d;
end;
//Вывод результата на экран по средствам API функции MessageBox
d := Format('Детерминант"%0.3f" = "%0.3f"!', [Base, d]);
MessageBox(HWND_DESKTOP, PChar(d), 'Результат вычисления', MB_ICONINFORMATION);

end;

exports
Determinant index 1;

begin
end.


Это сообщение отредактировал(а) MAKCim - 29.11.2007, 10:31
PM MAIL   Вверх
MAKCim
Дата 29.11.2007, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: нет
Всего: 207




 ! 
MAKCim
Модератор: Господа, используйте тег код!



--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
EDI
Дата 8.12.2007, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



Здравствуйте, господа.

Помогите, пожадуйста, с такой вещью: нужно решить задачу: Вводимые латинские большие символы преобразовать в малые, вывести их в третью строку в режиме экрана 40х25 зеленым цветом на синем фоне. И чтобы реагировала на клавишу останова Ctrl/F1

Начало получилось, дальше не могу
Код

.model small
.stack 100
.data
k1 db 41h
k2 db 5ah
.code
public _main
_main proc
mov ax,@data
mov ds,ax
mov dl,k1
q1: mov ah,2
or dl,20h
int 21h
sub dl,20h
inc dl
cmp dl,k2
jle q1
mov ah,4ch
int 21h
_main endp
end



Заранее спасибо.
PM MAIL   Вверх
EDI
Дата 9.12.2007, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



ну что? поможете или идти в другое место?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для Windows/DOS"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для Windows/Dos | Следующая тема »


 




[ Время генерации скрипта: 0.1072 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.