Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2012.02.26;
Скачать: [xml.tar.bz2];

Вниз

Машинный язык   Найти похожие ветки 

 
Процик   (2011-11-08 21:00) [0]

Как можно в наше время подучить машинные коды? :)Наверно в институтах.Если не ошибаюсь,то сейчас еще некоторые "пишут на процессоре":)


 
Dennis I. Komarov ©   (2011-11-08 21:03) [1]

Это "Матрица" так повлияла?


 
Процик   (2011-11-08 21:11) [2]

Если честно,то хотелось бы немного поучить.Понять как это все делается.То есть не на асме,а в кодаааах...


 
Ega23 ©   (2011-11-08 21:11) [3]


> .Если не ошибаюсь,то сейчас еще некоторые "пишут на процессоре":)


Как хобби - почему бы и нет?


 
Ega23 ©   (2011-11-08 21:12) [4]


> Если честно,то хотелось бы немного поучить.Понять как это
> все делается.То есть не на асме,а в кодаааах...


Ты уже достаточно хорошо разбираешься в асме?


 
Процик   (2011-11-08 21:14) [5]


> Как хобби - почему бы и нет?

Именно так!

> Ты уже достаточно хорошо разбираешься в асме?

Скажем так,ноль.Но это дело поправимое.


 
Inovet ©   (2011-11-08 21:16) [6]

> [5] Процик   (08.11.11 21:14)
> > Ты уже достаточно хорошо разбираешься в асме?
>
> Скажем так,ноль.Но это дело поправимое.

Вот поправь, тогда и про "в кодах" станет понятно.


 
Rouse_ ©   (2011-11-08 21:17) [7]

Интеловский мануал скачиваешь и учишь, но зубрить на память не советую - нафиг это не нужно :)


 
Pavia ©   (2011-11-08 21:21) [8]

Выучи ассемблер. Напиши диз ассемблер. Тогда и в машинных кодах сможешь работать. А так про освоение машинных кодов в интернете есть несколько статей.


 
Rouse_ ©   (2011-11-08 21:24) [9]


> То есть не на асме,а в кодаааах...

Это, кстати монопенисюально, если будет легче - то асм это машкод записанный человеческим языком, не более того... Другое дело что не весь машкод документирован, но это уже совсем из другой сказки...


 
Inovet ©   (2011-11-08 21:27) [10]

> [2] Процик   (08.11.11 21:11)
> не на асме,а в кодаааах...

В кодах сильно уж неудобно, асм не зря придумали - те же коды, только удобно.


 
Процик   (2011-11-08 21:29) [11]


> Вот поправь, тогда и про "в кодах" станет понятно.

Да я и собираюсь начать с асма затем немного заглянуть в коды...До сих пор в раздумьях какой асм выбрать.Прочитал статьи про асмы и  понял что под винду только Masm и Nasm.Но лучше в Насм в виндовс.И все же все они не идеальны эти асмы:( ИМХО микрософт может прекратить выпуск Масм и тогда что делать.Или забить на эти недостатки?

>машинных кодов в интернете есть несколько статей.

Видимо я их уже прочитал:)


 
KilkennyCat ©   (2011-11-08 21:31) [12]


> Процик   (08.11.11 21:11) [2]

купи где-нить с рук БК-0010. там в машкодах хоть запрограммируйся.


 
Процик   (2011-11-08 21:32) [13]


> Но лучше в Насм в виндовс

То есть Масм.


 
Rouse_ ©   (2011-11-08 21:34) [14]


> Прочитал статьи про асмы и  понял что под винду только Masm
> и Nasm

Под винду их куча, я до поры FASM-ом пользовался пока свой не накидал, MASM кстати имеет несколько неприятных глючков (правда и статей их описывающих до кормы). Вообще асм это тупо блокнот и машинка преобразования (если в лоб реализовывать без макросов и поддержки расширений конкретного синтаксиса) и алгоритм его прост - взял строку, пропустил через функцию, результат в файл


 
Pavia ©   (2011-11-08 21:40) [15]


> понял что под винду только Masm и Nasm

masm, nasm, tasm, fasm и тд. Любительских очень полно.
Советую взять fasm.

> ИМХО микрософт может прекратить выпуск Масм и тогда что
> делать.

Масм основан на синтаксисе intel в отличии от nasm. Поэтому если "микрософт" прекратит выпуск то всегда можно будет перейти на сторонний продукт.
Да и во вторых написать ассемблер не трудно порядка 50-90 труда часов и он готов.

Под ARM вообще меньше там команды очень мало и они простые.


 
Процик   (2011-11-08 21:44) [16]


> купи где-нить с рук БК-0010. там в машкодах хоть запрограммируйся.

Хорошо запомню.

> Rouse_

Да я вот думаю Масм учить.А вот есть лучший отладчик SoftIce и дизасм Ida pro.В них появляется тот самый асм код.Может следующий вопрос прозвучит глупо...Какой синтаксис асма в этих прогах и в связке с любым асмом я нормально смогу пользоваться ими?


 
Процик   (2011-11-08 21:48) [17]


> Да и во вторых написать ассемблер не трудно порядка 50-90
> труда часов и он готов.

Быстро!Я думал что намного больше.Ни уж то на асме,теоретически можно написать новый асм,без значительных минусов?


 
Rouse_ ©   (2011-11-08 21:51) [18]


> А вот есть лучший отладчик SoftIce

устарел и не поддерживается, да и зачем тебе ядерный отладчик? Для ядра либо "syser kernel debugger", либо старый добрый "WinDbg"

Отладчики третьего кольца это олька и ида, синтаксис у них настраиваемый, можно настроить так, как тебе будет удобно...


 
Rouse_ ©   (2011-11-08 21:53) [19]


> Процик   (08.11.11 21:48) [17]
> Быстро!Я думал что намного больше.Ни уж то на асме,теоретически
> можно написать новый асм,без значительных минусов?

из них около 45 часов уйдет на составление таблицы (я возился примерно 4 рабочих дня с этой табличкой), а сам асм-дизасм, это около ~ 350 строчек кода на каждый кусок (в сумме 700-800).
Ну а когда напишешь сам асм, то реализовать компилятор на нем самом и скомпилировать его - дело только времени.


 
DVM ©   (2011-11-08 21:55) [20]


> KilkennyCat ©   (08.11.11 21:31) [12]
>
> > Процик   (08.11.11 21:11) [2]
>
> купи где-нить с рук БК-0010. там в машкодах хоть запрограммируйся.
>

Помнится когда я учился в школе, в журнале Моделист-конструктор или ЮТ для умелых рук (а может и в обоих) публиковались схемы для сборки компьютеров. Так в одном из номеров была прошивка. Это было нечто. Много-много страниц распечатанных машинных кодов, которые надо было забить вручную без ошибок. А ошибки вроде были уже в распечатках. Не знаю хватило ли упорства у кого нибудь из подписчиков журнала на сей подвиг.


 
Процик   (2011-11-08 22:09) [21]


>  Rouse_ из них около 45 часов уйдет на составление таблицы
> (я возился
>  примерно 4 рабочих дня с этой табличкой), а сам асм

Да это интересно!

> Не знаю хватило ли упорства у кого нибудь из подписчиков
> журнала на сей подвиг.

Всегда найдутся отчаянные на подвиг люди:)Может когда нибудь полистаю журнальчик:)

Всем спасибо за помощь!Ответы были интересные и познавательные.


 
Inovet ©   (2011-11-08 22:18) [22]

> [20] DVM ©   (08.11.11 21:55)
> Не знаю хватило ли упорства у кого нибудь из подписчиков
> журнала на сей подвиг

Журнал Радио был первым в 1982 году с компьютером Микро-80. В 1986 был опубликован упрощенный компьютер Радио-86РК. Вот для 86РК я хабивал коды, самый объёмный был Basic 8 КБ что ли. Не так это страшно и долго. Ошибки отлавливаются по контрольным суммам блоков по 256 байт и по всему дампу ещё контрольная сумма.


 
DVM ©   (2011-11-08 22:30) [23]


> Inovet ©   (08.11.11 22:18) [22]


> В 1986 был опубликован упрощенный компьютер Радио-86РК.

Этот я застал немного.


> Вот для 86РК я хабивал коды, самый объёмный был Basic 8
> КБ что ли.

Мне кажется там были побольше листинги.


> Не так это страшно и долго. Ошибки отлавливаются по контрольным
> суммам блоков по 256 байт и по всему дампу ещё контрольная
> сумма.

Мне тогда казалось очень сложным делом.

А компьютер сам сделал?


 
Inovet ©   (2011-11-08 22:44) [24]

> [23] DVM ©   (08.11.11 22:30)
> А компьютер сам сделал?

Да. Мне друг привёз из дома плату, которую он на радиозаводе делал, на ней часть микросхем была распаяна остальное покоцано. Имея печатную плату остальное уже купил и спаял. Отдельная история с корпусом была. И отдельная с клавиатурой. Мне другой друг из Магнитогорска привёз две списанные клавиатуры от каких-то терминалов с классными кнопками на герконах с приятным нажатием, но кнопка очень высокая. Вот из двух клавиатур я собрал одну, а уже под неё и основную плату делал корпус с наклоном причём, как и положено было по конструкции клавиатуры. Гнул в общаге на кухне полистирол над газовой плитой с надетой консервной банкой с пробитой дырочкой вместо рассекателя. Ну и ещё всякие подобные изощрения. Ну и блок питания до кучи на напряжения +5 -5 +12 такие требовал процессор.

> [23] DVM ©   (08.11.11 22:30)
> > Вот для 86РК я хабивал коды, самый объёмный был Basic 8 КБ что ли.
>
> Мне кажется там были побольше листинги.

Дык ОЗУ в базовой версии 16 КБ, в расширенной 32 КБ.


 
TUser ©   (2011-11-08 22:50) [25]

ну пишут же, вот например

http://en.wikipedia.org/wiki/EICAR_test_file


 
Очень злой   (2011-11-08 22:51) [26]


> Помнится когда я учился в школе, в журнале Моделист-конструктор
> или ЮТ для умелых рук (а может и в обоих) публиковались
> схемы для сборки компьютеров. Так в одном из номеров была
> прошивка. Это было нечто. Много-много страниц распечатанных
> машинных кодов, которые надо было забить вручную без ошибок.
>  А ошибки вроде были уже в распечатках. Не знаю хватило
> ли упорства у кого нибудь из подписчиков журнала на сей
> подвиг.


Я когда-то пару раз набирал с распечатки около 8 кб
Бейсик для Ориона, один какой-то очень крутой монитор для Специалиста (не помню точно сколько, то ли 6, то ли 8 кб...
Когда собрал свой первый "комп" (в те времена (конец 80-х, начало 90-х) это считалось компьютером) - Специалист, вообще возникла проблема: не было знакомых, чтобы записали монитор (2 кб) в ПЗУ.
Получилось, что есть комп, есть программатор, но зашить монитор в ПЗУ не могу потому что комп не работает, а комп не работает, потому что нет зашитого в ПЗУ монитора.
Собрал ручной программатор, и пытался сам записать. Но когда после сотни-другой байт делал ошибку (так как все (и адрес и данные) приходилось вводить в двоичном виде, то сделать случайную ошибку было очень просто (случайно не то нажал и все пропало)) - приходилось все стирать под УФ-лампой...
В конце концов плюнул и начал что-то простое сам писать в кодах и прошивать в  ПЗУ ручным программатором... ПО крайней мере если где-то ошибся, можно было то место забить НОПами и продолжать дальше... Вот только с переходами (условными/безусловными и пр) возникали проблемы...
Позже, когда раздобыл зашитый в ПЗУ монитор, то перестал страдать этой фигней (программированием непосредственно в кодах), так как после этого уже была возможность пользоваться ассемблером.
А с вводом "бумажных" дампов проблем особых не было. Набрал - проверил контрольную сумму - не совпало, значит сравниваем набранное с бумажным и ищем ошибку. Контрольная сумма совпала - значит все, закончили.
Обычно имелись контрольные суммы для блоков по 256 байт. Более удобнее было, если контрольные суммы в бумажном варианте имелись для блоков по 16 байт...


 
Германн ©   (2011-11-08 22:59) [27]


> Rouse_ ©   (08.11.11 21:53) [19]
>
> из них около 45 часов уйдет на составление таблицы (я возился
> примерно 4 рабочих дня с этой табличкой)

А сколько дней ты искал силу воли начать заниматься этой "нудятиной"?


 
Rouse_ ©   (2011-11-08 23:08) [28]


> Германн ©   (08.11.11 22:59) [27]
> А сколько дней ты искал силу воли начать заниматься этой
> "нудятиной"?

Это рабочая задача, поэтому ни сколько, больше времени заняло подготовку обертки под задачу, чтоб плавно все легло на уже имеющийся код...


 
Германн ©   (2011-11-08 23:12) [29]

Удалено модератором


 
Rouse_ ©   (2011-11-08 23:14) [30]

Удалено модератором


 
Inovet ©   (2011-11-08 23:18) [31]

> [26] Очень злой   (08.11.11 22:51)

У меня с прошивкой ПЗУ всё красиво получилось. Увидел объявление "Прониваем ПЗУ Н рублей за 1 кб" и адрес указан на физфаке, пошёл в ту лабораторию, а там было нечто - персоналка и к ней фирменный программатор подключен, это всё равно как космический корабль из будущего было увидеть. У ребят оказались дампы монитора и знакогенератора, только из журнала патчи свежие наложили, ещё ПЗУ одна у меня дохлая оказалась, так свою подарили.


 
Rouse_ ©   (2011-11-08 23:26) [32]

а мне мой Enterprise 128 летеха один паял в славном городе PAPA TAPOLCAFO  - мал я еще был в свои 12 лет для таких сложных телодвижений :)


 
Германн ©   (2011-11-08 23:35) [33]

Удалено модератором


 
Германн ©   (2011-11-08 23:38) [34]


> Если не ошибаюсь,то сейчас еще некоторые "пишут на процессоре"

Лет 10 назад я чуть ли не каждый день писал на процессорах. Наклеивал на них стикер и писал шариковой ручкой. Потом фирма стала эти наклейки печатать, а потом и вовсе заказала готовые наклейки. :)


 
KilkennyCat ©   (2011-11-08 23:40) [35]


>  Rouse_ ©   (08.11.11 23:26) [32]
>мал я еще был в свои 12 лет для таких
> сложных телодвижений :)

не оправдывай свою лень :)
я в 12 лет уже чинил мозги и перфолентный считыватель


 
KilkennyCat ©   (2011-11-08 23:41) [36]


> Германн ©   (08.11.11 23:38) [34]

фигня. я стачивал заводскую маркировку и фрезеровал свою.


 
Германн ©   (2011-11-08 23:54) [37]


> KilkennyCat ©   (08.11.11 23:41) [36]
>
>
> > Германн ©   (08.11.11 23:38) [34]
>
> фигня. я стачивал заводскую маркировку и фрезеровал свою.
>
>

Никогда не был "хакером"! :)
Точнее почти никогда. 13-14 лет назад взломал некий триальный компонент для Д1. С тех пор ни интереса к хакерству, ни потребностей к противостоянию хакерству не имел. :)


 
Германн ©   (2011-11-09 00:16) [38]

Удалено модератором


 
SegeyIT   (2011-11-09 00:20) [39]

Вообще-то в машинных кодах железо легко тестировалось (PDP-11 и подобных).


 
KSergey ©   (2011-11-09 10:01) [40]

Читаю ветку про "разные асмы (масм/насм/фасм)", еще попалась тут фраза "синтаксис настраиваемый"
Я чета не понял: нынче нет единой и канонической записи ассемблера для Intel-процессоров штоле??



Страницы: 1 2 3 вся ветка

Форум: "Прочее";
Текущий архив: 2012.02.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.004 c
2-1321864635
megagenom
2011-11-21 12:37
2012.02.26
Мониторинг свободного пространства на удаленном сервере.


15-1320848351
xss22
2011-11-09 18:19
2012.02.26
Удаление элемента со сдвигом из массива array of record


15-1320485519
RDen
2011-11-05 12:31
2012.02.26
Свернуть все окна в Win XP


15-1320480875
wl
2011-11-05 11:14
2012.02.26
Предложения по улучшению работы форума


15-1320870602
Юрий
2011-11-10 00:30
2012.02.26
С днем рождения ! 10 ноября 2011 четверг





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский