Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: программирование на языке Assembler


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler

Выпуск № 229
от 04.09.2005, 21:36

Администратор:Калашников О.А.
В рассылке:Подписчиков: 256, Экспертов: 21
В номере:Вопросов: 4, Ответов: 8


Вопрос № 25535: Здравствуйте, уважаемые эксперты. Помогите пожалуйста написать процедуру определения частоты процессора для DOS и Windows.Возможно ли изменить частоту процессора программным путем? ...
Вопрос № 25545: Приветствую Вас, уважаемые эксперты! У меня така проблема: установил SoftICE в Windows XP SP2, но он у меня "не открывается": я запускаю программу из Symbol Loader, программа преспокойно запускается, а окошка SI нет. Когда ставлю б...
Вопрос № 25557: Пробегитесь товарищи по тексту, посмотрите ошибки пожалуйста :-) ;--------------------------------- CSEG segment assume CS:CSEG, DS:CSEG, SS:CSEG org 100h start: ; записываем адреса строк в массив MOV strs[0*2],offse...
Вопрос № 25558: Товарищи нужен алгоритм деления двойного слова(dd) на слово(dw)...

Вопрос № 25.535
Здравствуйте, уважаемые эксперты.
Помогите пожалуйста написать процедуру определения частоты процессора для DOS и Windows.Возможно ли изменить частоту процессора программным путем?
Отправлен: 30.08.2005, 12:17
Вопрос задал: Kuran (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Bob Johnson
Здравствуйте, Kuran!
Определение частоты процессора, начиная с Intel Pentium достаточно просто. В нем появилась команда rdtsc, которая считывает в регистры edx : eax показание внутреннего счетчика, который увеличивается с тактовой частотой. Т.е. определение частоты сводится к делению разности в показаниях этой команды на время, за которое была получена эта разность. Время при этом следует вычислять каким-либо внешним способом; точность определения частоты будет зависеть от точности отсчета этого времени. у меня на странице есть утилита (с исходниками) под windows, которая измеряет скорость чтения и записи данных процессором в оперативную память для блоков разной длины, в ее коде есть определение частоты.
http://bobjohnson.nm.ru
Ответ отправил: Bob Johnson (статус: Академик)
Отправлен: 30.08.2005, 13:15
Оценка за ответ: 5
Комментарий оценки:
Вот что значит давно не был на Вашем сайте!

Отвечает: Евгений Иванов
Здравствуйте, Kuran!
частоту процессора программным путём менять не удастся, но вот частоту FSB сменить можно и коэффициента. так что запросто.

чтобы определить частоту процессора, нужно замерять количество тактов за секунду используя команду RDTSC.

---------
Что имеем - не храним, потерявши - плачем
Ответ отправил: Евгений Иванов (статус: Профессор)
Отправлен: 30.08.2005, 15:03
Оценка за ответ: 4
Комментарий оценки:
Японцем по имени H. Oda была создана замечательная программа SoftFSB, предназначенная для того, чтобы на лету изменять частоту FSB. Не знаю, как данная программа функционирует, но она корректирует параметры тактового генератора, и тот начинает работать на другой частоте!


Вопрос № 25.545
Приветствую Вас, уважаемые эксперты!

У меня така проблема: установил SoftICE в Windows XP SP2, но он у меня "не открывается": я запускаю программу из Symbol Loader, программа преспокойно запускается, а окошка SI нет. Когда ставлю бряк скажем, на правый клик мышки - сайс срабатывает. Раньше я работал с SI только под Win98, установил на ХР - и вот не работает...
Все настройки облазил вроде - всё как надо выставлено.
Подскажите, пожалуйста, в чём загвоздка?

Спасибо.
Отправлен: 30.08.2005, 14:31
Вопрос задал: Капустин Евгений (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: BSOD
Здравствуйте, Капустин Евгений!
а чиво версию не написал ? че гадать должен ?
старые версии фигово работают на ХР
и ваще ? он те для чиго нужен ? эсли для дравов то оптимальный вариант SoftIce Driver Suite ver.2.7 намано пашет под хрюнделем
---------
Blue Screen of Death
Ответ отправил: BSOD (статус: 2-ой класс)
Отправлен: 30.08.2005, 14:44

Отвечает: Sager
Здравствуйте, Капустин Евгений!
Почитай вот это:
http://www.cracklab.ru/art/softice.php
Ответ отправил: Sager (статус: 5-ый класс)
Отправлен: 31.08.2005, 11:04


Вопрос № 25.557
Пробегитесь товарищи по тексту, посмотрите ошибки пожалуйста :-)
;---------------------------------
CSEG segment
assume CS:CSEG, DS:CSEG, SS:CSEG
org 100h
start:

; записываем адреса строк в массив
MOV strs[0*2],offset day1
MOV strs[1*2],offset day2
MOV strs[2*2],offset day3
MOV strs[3*2],offset day4
MOV strs[4*2],offset day5
MOV strs[5*2],offset day6
MOV strs[6*2],offset day7
;массив содержит 6*2+2 байт адресов

MOV AH,09h ; вывести строку
LEA DX, message
INT 21h

MOV AH,08h ; ввести символ без дублирования
INT 21h

SUB AL,30h
MOV str_,AL ; т.к. мне требуется менее девяти символов, то можно просто вычесть 48
XOR BX,BX
MOV Bl, AL
; тепреь в зависимости от введенного пользователем числа 0-7, нужно вывести соответсвующую строку символов

;----------------------
;т.к. мой массив имеет размерность 14 байтов, т.е. 2*7, то введем следующий алгоритм:
MOV AH, 09h
SHL BX,1 ; т.е. умножения на два
MOV DX, [strs+BX]
INT 21h
;----------------------

int 20h

day1 db 'Sunday..',0Ah,0Dh,'$'
day2 db 'Monday..',0Ah,0Dh,'$'
day3 db 'Tuesday.',0Ah,0Dh,'$'
day4 db 'Thursday',0Ah,0Dh,'$'
day5 db 'Saturday',0Ah,0Dh,'$'
day6 db 'Friday..',0Ah,0Dh,'$'
day7 db 'Saturday',0Ah,0Dh,'$'
message db 'введите номер дня недели: ',0Ah,0Dh,'$'
strs dw 7 dup(?)
str_ db ?
CSEG ends
end start
; В программе осталость определить такое условие, чтобы цифры введенные пользователем,
;не входящие в диапазон 0-6 игнорировались.
;---------------------------------
Отправлен: 30.08.2005, 17:47
Вопрос задал: Вася Пупкин (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Евгений Иванов
Здравствуйте, Вася Пупкин!
всё хорошо.
проверка -
cmp al, 6
jna skip
sub al,al
skip:

---------
Что имеем - не храним, потерявши - плачем
Ответ отправил: Евгений Иванов (статус: Профессор)
Отправлен: 30.08.2005, 20:28


Вопрос № 25.558

Товарищи нужен алгоритм деления двойного слова(dd) на слово(dw)
Отправлен: 30.08.2005, 17:48
Вопрос задал: Вася Пупкин (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: BOIL
Здравствуйте, Вася Пупкин!

сам алгоритм искать лень, но могу подсказать, где найти.
подобные целочисленные алгоритмы (деления и умножения) активно предалагаются, при чем в ассемблерных мнемониках производителями однокристальных микроконтроллеров.
Документы на эту и др. тему называются Application Note(s)

Вот ссылочка на мой любимый сайтик www.atmel.ru

тут можно найти практически все. Остается только адаптировать к конкретному процессору - это просто, поверь
Ответ отправил: BOIL (статус: 4-ый класс)
Отправлен: 30.08.2005, 18:19

Отвечает: Евгений Иванов
Здравствуйте, Вася Пупкин!
чтобы заделить, используй команду DIV

sub edx,edx
mov eax, [dd_]
mov ebx, [dw_]
and ebx, 65535
div ebx


---------
Что имеем - не храним, потерявши - плачем
Ответ отправил: Евгений Иванов (статус: Профессор)
Отправлен: 30.08.2005, 21:19

Отвечает: Sager
Здравствуйте, Вася Пупкин!
Добавлю, что вместо:
mov ebx, [dw_]
and ebx, 65535
пиши так:
movzx ebx, [dw_] (если кодишь под досом, то поставь вначале директиву .386)
Ответ отправил: Sager (статус: 5-ый класс)
Отправлен: 31.08.2005, 10:51


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.faq
Отписаться
Вспомнить пароль

В избранное