Forums.Avtograd.Ru: Вопросы по Assembler - Forums.Avtograd.Ru

Перейти к содержимому

  • (2 Страниц)
  • +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Вопросы по Assembler

#1 Пользователь офлайн   KORENHACK

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 464
  • Регистрация: 01 Ноябрь 07

Отправлено 01 Ноябрь 2007 - 18:17

Начнём...
Кто-нить знает как упорядочить массив любого измерения?
0


  • (2 Страниц)
  • +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Другие ответы в этой теме

#2 Пользователь офлайн   Den

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 246
  • Регистрация: 01 Ноябрь 07

Отправлено 01 Ноябрь 2007 - 22:25

пузырьковый метод или метод третьего стакана ... или как он там назывался ... не подходит ?!
думаю для ниособо объёмных массивов вполне сойдёт ...
0

#3 Пользователь офлайн   KORENHACK

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 464
  • Регистрация: 01 Ноябрь 07

Иконки сообщения  Отправлено 02 Ноябрь 2007 - 08:36

На делфи я это сделать могу, но т.к. я только начал изучать асм, мне не помешал бы исходник
0

#4 Пользователь офлайн   Den

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 246
  • Регистрация: 01 Ноябрь 07

Отправлено 02 Ноябрь 2007 - 08:49

ассм не знаю ))
чти в книгах ввод вывод с массива, циклы ...
0

#5 Пользователь офлайн   glVertex

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 61
  • Регистрация: 03 Ноябрь 07

Отправлено 19 Ноябрь 2007 - 15:40

Можно ли регулировать громкость звука внутреннего динамика?
Если да то как?
0

#6 Пользователь офлайн   Dr.V1.3

  • Пользователь
  • PipPip
  • Группа: Пользователи
  • Сообщений: 116
  • Регистрация: 15 Ноябрь 07

Отправлено 22 Ноябрь 2007 - 00:53

нет, она не крутится
0

#7 Пользователь офлайн   KORENHACK

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 464
  • Регистрация: 01 Ноябрь 07

Отправлено 22 Ноябрь 2007 - 09:17

Просмотр сообщенияglVertex (19.11.2007, 16:40):

Можно ли регулировать громкость звука внутреннего динамика?
Если да то как?

Ты про спикер? Ну громкость врядли а вот скорость ;)

asm
   push edx
   push eax
   mov eax, Win32Platform
   cmp eax, VER_PLATFORM_WIN32_NT
   jne @@9X
   call Windows.Beep
   ret
@@9X:
   pop eax
   pop edx
   push ebx
   push edx
   mov bx, ax
   mov ax, 34DDh
   mov dx, 0012h
   cmp dx, bx
   jnc @@2
   div bx
   mov bx, ax
   in al, 61h
   test al, 3
   jnz @@1
   or al, 3
   out 61h, al
   mov al, 0B6h
   out 43h, al
@@1:
   mov al, bl
   out 42h, al
   mov al, bh
   out 42h, al
   call Windows.Sleep
   in al, 61h
   and al, 0FCh
   out 61h, al
   jmp @@3
@@2:
   pop edx
@@3:
   pop ebx
end;


Если работать в delphi, то нужно все это заключить в процедуру
procedure Sound(Frequency, Duration: Integer);

а потом где-нить в коде написать
sound[любое число],
где число - это скорость. Больше 10 тыс. ставить не советую, ато без спикера останишься(хотя я ставил и 15000).
0

#8 Пользователь офлайн   glVertex

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 61
  • Регистрация: 03 Ноябрь 07

Отправлено 22 Ноябрь 2007 - 21:14

Просмотр сообщенияKORENHACK (22.11.2007, 9:17):

Ты про спикер? Ну громкость врядли а вот скорость ;)

Скорость - эта частота звука.

Просмотр сообщенияKORENHACK (22.11.2007, 9:17):

где число - это скорость. Больше 10 тыс. ставить не советую, ато без спикера останишься(хотя я ставил и 15000).

Там хоть скоко можно ставить.
На напрежение на динамике это не влияет.
Я на Pascalе ( Sound([частота]); ) 65535Гц ставил.
А регулировать громкость нужно для создания проигрывателя WAV
файлов под DOS. :)
0

#9 Пользователь офлайн   KORENHACK

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 464
  • Регистрация: 01 Ноябрь 07

Отправлено 25 Ноябрь 2007 - 19:24

Просмотр сообщенияglVertex (22.11.2007, 22:14):

Скорость - эта частота звука.
Там хоть скоко можно ставить.
На напрежение на динамике это не влияет.
Я на Pascalе ( Sound([частота]); ) 65535Гц ставил.
А регулировать громкость нужно для создания проигрывателя WAV
файлов под DOS. :)


Я это в delphiworld давно еще читал, и там рпедупреждали насчет частоты.
0

#10 Пользователь офлайн   dezdrodomus

  • Пользователь
  • PipPip
  • Группа: Пользователи
  • Сообщений: 177
  • Регистрация: 13 Ноябрь 07

Отправлено 05 Декабрь 2007 - 11:25

Просмотр сообщенияKORENHACK (1.11.2007, 18:17):

Начнём...
Кто-нить знает как упорядочить массив любого измерения?

на wikipedia.com набери метод Шелла(или сортировка Шелла или просто сортировка а там найди сортировка Шелла)
там увидишь примеры сортировки на разных языках ... те нужно на асме чтоб было тады сделай так
1) нужно установить visual c++(или visual studio там есть с++)
2) берешь пример на С++ сортировки методом шелла
3) компилируешь с опциями чтоб генерился асм код(можешь кстатити оптимизацию отключить чтоб понятнее был текст)
все вот те и пример на асме коде
0

#11 Пользователь офлайн   KORENHACK

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 464
  • Регистрация: 01 Ноябрь 07

Отправлено 06 Декабрь 2007 - 18:09

Просмотр сообщенияdezdrodomus (5.12.2007, 12:25):

на wikipedia.com набери метод Шелла(или сортировка Шелла или просто сортировка а там найди сортировка Шелла)
там увидишь примеры сортировки на разных языках ... те нужно на асме чтоб было тады сделай так
1) нужно установить visual c++(или visual studio там есть с++)
2) берешь пример на С++ сортировки методом шелла
3) компилируешь с опциями чтоб генерился асм код(можешь кстатити оптимизацию отключить чтоб понятнее был текст)
все вот те и пример на асме коде

thanks
0

#12 Пользователь офлайн   XoTT@Bb)4

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 86
  • Регистрация: 01 Ноябрь 07

Отправлено 12 Сентябрь 2008 - 16:18

Дарова, народ! Кто-нибудь знает как в ассме придать выводимому тексту цвет..?.....
Ремонт компьютеров и оргтехники, заправка картриджей.
ООО "Эксперт - Сервис", тел 35-83-81, Приморский 31.
0

#13 Пользователь офлайн   Explorer

  • Активный пользователь
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 699
  • Регистрация: 09 Ноябрь 07

Отправлено 15 Сентябрь 2008 - 18:51

XoTT@Bb)4
Сначала определись для чего цвет нужен - консоль или GUI или чего-то еще.
0

#14 Пользователь офлайн   Saray

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 2 388
  • Регистрация: 31 Январь 08

Отправлено 16 Сентябрь 2008 - 06:55

Просмотр сообщенияExplorer (15.9.2008, 19:51):

XoTT@Bb)4
Сначала определись для чего цвет нужен - консоль или GUI или чего-то еще.

GUI на ассемблере? жжоте :rolleyes:

Помницца раньше в дремучие студенческие годы пользовались переменной textattr, не помню точно в какой области памяти она хранилась, но её изменение влияло на выводимый в дальнейшем текст.
Есть еще один способ: вся видеопамять текстового режима хранится по определенному адресу B800:0000,
занимает 4 кб = (80*25) *2
первым байтом идет сам символ, следущим его цветовой атрибут, формат его такой же как у textattr, младшие 4 бита цвет символа, старшие 4 бита - цвет фона (или наоборот)
Только вот позволит ли винда писать напряму в видеопамять? 95 и 98 позволяла
Если женщина не права, нужно извиниться и замолчать.
0

#15 Пользователь офлайн   Explorer

  • Активный пользователь
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 699
  • Регистрация: 09 Ноябрь 07

Отправлено 16 Сентябрь 2008 - 10:51

Просмотр сообщенияSaray (16.9.2008, 7:55):

GUI на ассемблере? жжоте :rolleyes:

Я сначала подумал что ему нужно для текста в окне/элементе цвет поменять, либо в консольной программе.
P.S. А GUI, ну наверное Вы неправильно меня поняли, либо я неточно выразился.
0

#16 Пользователь офлайн   Alex Z. Saver

  • Старожил
  • PipPipPipPipPip
  • Группа: Модераторы
  • Сообщений: 3 890
  • Регистрация: 01 Ноябрь 07

Отправлено 28 Сентябрь 2008 - 01:41

Не вижу ничего необычного в гуях на асме... <_<
Может он пишет на WinAPI или под KolibiOS...
0

#17 Пользователь офлайн   NT CRASHER

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 72
  • Регистрация: 01 Ноябрь 07

Отправлено 15 Октябрь 2008 - 09:48

Вопрос такой: есть массив двумерный 4 на 4 тип элемента - слово
тут никких трудностей нет -
model small
include io.asm

count equ 4*4 ; определен размер массива 4 на 4

.data?
massa dw count dup (?)
далее вводим с клавы в массив то что нам надо:
.data
ent db "Заполнить массив А:",'$'
m1 dw ?
.stack 256
.code
start:

mov ax,@data
mov dx,ax

lea dx,ent
mov ah,9
int 21h

mov cx, count

mov di, offset massa
l1:
inint m1
loop l1

тут тоже все ясно - а вот как теперь обратиться к элементам массива ?
Знаю, что нумерация с нуля идет по идее надо что-то типа
mov si,0
mov ax,massa[bx][si]

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

#18 Пользователь офлайн   DerGas

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 05 Август 08

Отправлено 01 Декабрь 2008 - 17:14

в институте нужно делать лабы по периферии... под ХР ничего не выходит... только 98? или линукс может выручить тоже?
0

#19 Пользователь офлайн   Barrabas

  • Пользователь
  • PipPip
  • Группа: Пользователи
  • Сообщений: 431
  • Регистрация: 01 Ноябрь 07

Отправлено 01 Декабрь 2008 - 22:06

Просмотр сообщенияDerGas (1.12.2008, 18:14):

в институте нужно делать лабы по периферии... под ХР ничего не выходит... только 98? или линукс может выручить тоже?

может виртуалка поможет, поставь туда 98 и попробуй
0

#20 Пользователь офлайн   d.k

  • Активный пользователь
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 808
  • Регистрация: 20 Июнь 08

Отправлено 10 Декабрь 2008 - 10:30

Просмотр сообщенияDerGas (1.12.2008, 18:14):

под ХР ничего не выходит...

да, там с tlink'om проблемы на хп ..
я обычно просто через командную строку все компилю, работает ..
0

  • (2 Страниц)
  • +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей