Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

assembler

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> assembler
Имя
Сообщение << Старые топики   Новые топики >>
assembler - 2004-11-23 11:08:37   
wurdik

Сообщений: 46
Оценки: 0
Присоединился: 2004-09-27 12:55:26
estj li kto nibudj kto znaet assembler? Ja pro6u pomo4 s opisaniem komand 4to kakaja i 4ego delaet. teksta mnogo tak 4to lu46e mo#no ostavitj svoj meil. O4en nu#na pomo6. Zaranee spasibo
Post #: 1
assembler - 2004-11-23 11:17:58   
DeathLess

Сообщений: 141
Оценки: 0
Присоединился: 2004-10-19 08:24:04
Есть ли тут кто-нибудь кто знает русский, а то не пойму чё он пишит?
Post #: 2
assembler - 2004-11-23 13:32:54   
wurdik

Сообщений: 46
Оценки: 0
Присоединился: 2004-09-27 12:55:26
что именно тебе не понятно? я исчу человека, которий знает ассемблер. Хочу попросить помощи с описанием команд в одной моей программке. что какая команда делает. если кто-нибудь может помочь, оставте свой мэйл. просто прога очен большая и сюда ее не очень то хочется запихивать. заранее спасибо
Post #: 3
assembler - 2004-11-24 02:48:30   
DeathLess

Сообщений: 141
Оценки: 0
Присоединился: 2004-10-19 08:24:04
Непонятен был транслит, я его терпеть не могу.

Врятли кто-нибудь захочет разбирать твою "большую" программу. Лучши купи какой-нибудь учебник по асемблеру.
Post #: 4
assembler - 2004-11-24 02:50:07   
DeathLess

Сообщений: 141
Оценки: 0
Присоединился: 2004-10-19 08:24:04
Непонятен был транслит, я его терпеть не могу.

Врятли кто-нибудь захочет разбирать твою "большую" программу. Лучши купи какой-нибудь учебник по асемблеру.
Post #: 5
assembler - 2004-12-02 23:53:04   
birkhov

Сообщений: 4
Оценки: 0
Присоединился: 2004-11-07 21:18:26
Есть задание: создать свой FAT на дискете.
Мысли есть? Прошу высказаться.[sm=1.gif]
Post #: 6
assembler - 2004-12-03 10:10:41   
Pupkin-Zade

Сообщений: 9398
Оценки: 1489
Присоединился: 2004-03-10 13:54:16
Тут все написано
http://www.xakep.ru/post/24239/default.asp
Post #: 7
assembler - 2004-12-08 00:44:21   
birkhov

Сообщений: 4
Оценки: 0
Присоединился: 2004-11-07 21:18:26
С пометкой срочно!
Нужно написать курсач про взаимодействие ЦП и ОЗУ, ЦП и жесткий диск…Требуется выполнить 15 задач, типа считывание из ОЗУ 15 файлов разного размера, тоже самое и с жестким диском…и при этом считать сколько затрачивает ЦП тактов на выполнение таких задач.
Если есть мысли или ссылки прошу поделиться.
Post #: 8
assembler - 2004-12-13 03:09:14   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
Для подсчёта тактов есть замечательная команда rdtsc (при условии что у тебя i585 и выше), которая возвращает в edx:eax значение аппаратного счетчика тактов. если твой assembler про неё ничего не знает пиши вместо неё
db 0Fh, 31h
А вот, С функция (uint64 это 64-битное беззнаковое целое, не знаю как оно в твоей системе называется)
uint64 get_count () {
static uint64 count;
uint64 res;
asm {
rdtsc
mov dword ptr res, eax
mov dword ptr res+4, edx
}
res -= count; /* res == количеству тактов с последнего вызова */
count -= res; /* count == текущему значению аппаратного счётчика*/
return res;
}
Сама функция на i585 будет выполняться не больше 20 тактов.

А насчёт файлов/ОЗУ тут многого можно понаделать…
Но самый простой способ: создаёшь на диске файл большого размера, и замеряешь сколько тактов он будет читаться, (читать можешь через стандартную библиотеку C, через DOS, BIOS, или хоть программируя DMA на asm'е, это как больше нравится); потом копируешь большие куски памяти, и тоже замеряешь количество тактов…
Post #: 9
assembler - 2004-12-13 03:21:43   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
2 birkhov
Есть такой пакет программ mtools называется, он умеет работать с fat. Больших требований к системе не предъявляет, может быть даже компилируется под DOS/Windows. И естественно, он opensource…
Post #: 10
assembler - 2004-12-18 01:34:30   
birkhov

Сообщений: 4
Оценки: 0
Присоединился: 2004-11-07 21:18:26
Использовал модуль takter (см. ниже), перед выполнением операции вызывал процедуру startcount а после выполнения функцию stopcount … по работе с файлами уже все было занято :(, я попробывал увеличивать размер рисунка и сохранять его сначала на диске (15 шагов), и потом сохранять в поток (TMemoryStream) - надеюсь сохранение в поток это есть работа с ОЗУ :) вроде получилось, только наоборот, когда сохраняю на диск (SaveToFile) получается процессор затрачивает меньше тактов чем при сохранении в поток (SaveToStream)…

unit takter;
{
AMD RDTSC v1.0
(C) 2002 SPU
}


interface

Procedure StartCount;
Function StopCount:Int64;

var Correction:Int64;

implementation

var temp,temp1:Int64;

Procedure StartCount;
var t1,t2:cardinal;
begin
asm
rdtsc
mov t1,edx
mov t2,eax
end;
temp:=Int64(t2)+Int64(t1) shl 32;
end;

Function StopCount:Int64;
var t1,t2:cardinal;
begin
asm
rdtsc
mov t1,edx
mov t2,eax
end;
temp1:=Int64(t2)+Int64(t1) shl 32;
Result:=temp1-temp-Correction;
end;

var k:Int64;
i:Integer;
begin
Correction:=0;
k:=0;
for i:=1 to 15 do
begin
StartCount;
k:=k+StopCount;
end;
Correction:=k div 1000;
end.
Post #: 11
Страниц:  [1]
Все форумы >> [Веб-программинг] >> assembler







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.