Codeview для windows 10

—>ASSEMBLER В ДЕЛЕ —>

—>Главная | —>Регистрация | —>Вход | RSS —>
—>Настроение —>
—>
—>

—> —>

—> —>Категории раздела —>
—>
Компиляторы [5]
Игры [2]
Книги [3]
Текстовые редакторы [2]
Файловики [1]
Отладчики [3]
Среды программирования [1]
Программы обучалки [2]
Всякие исходники [3]

—>

—> —> —> —>

—>Загрузка файлов —>
—> —>

—> —> —> —> —> —>

—> —>Наш опрос —>
—>

CodeView — программа-отладчик (по-ихнему debugger — исправлятель ошибок). Отладчики помогают программистам понять, что делает их программа. 🙂 Когда этот светлый миг наступает, становится понятно, где ошибка.

Сайт программы: microsoft.com. В принципе программа доступна для бесплатного скачивания где-то в дебрях Майкрософта, однако она является лишь придатком к довольно большому ненужному пакету, который входит в дополнение (не помню к чему).

Ещё CV входит в старый MASM (v5x,v6x) который входит в VisualC++ (версии не знаю).

CodeView

Ошибка Lua: callParserFunction: function «#property» was not found.

Ошибка Lua: callParserFunction: function «#property» was not found.

Ошибка Lua в Модуль:Wikidata на строке 170: attempt to index field ‘wikibase’ (a nil value).

Ошибка Lua: callParserFunction: function «#property» was not found.

Ошибка Lua: callParserFunction: function «#property» was not found.

Ошибка Lua в Модуль:Wikidata на строке 170: attempt to index field ‘wikibase’ (a nil value).

Ошибка Lua в Модуль:Wikidata на строке 170: attempt to index field ‘wikibase’ (a nil value).

Ошибка Lua в Модуль:Wikidata на строке 170: attempt to index field ‘wikibase’ (a nil value).

Ошибка Lua в Модуль:Wikidata на строке 170: attempt to index field ‘wikibase’ (a nil value).

Ошибка Lua в Модуль:Wikidata на строке 170: attempt to index field ‘wikibase’ (a nil value).

CodeView — автономный отладчик, созданный Дэвидом Норрисом из Microsoft в 1985 году. Первоначально CodeView разрабатывался для Microsoft C 4.0 и более поздних версий. Он также разрабатывался для Visual Basic для MS-DOS, Microsoft Basic PDS, и ряда других продуктов Microsoft. Это был один из первых отладчиков для MS-DOS, являвшийся полноэкранным, а не линейным (как его предшественники DEBUG.COM и symdeb).

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

После выпуска Microsoft Visual C++ 1.0 функциональность CodeView была интегрирована в единую среду программирования, известную как интегрированная среда разработки (IDE), хотя CodeView все ещё был доступен в 16-разрядных версиях Visual C++. QuickC и ряд других инструментов развития также были интегрированы в единую среду программирования. Такая интеграция, по мнению многих разработчиков, является более естественным способом разработки программного обеспечения. Всё может быть сделано без переключения программ или контекста от кодирования и до отладки.

Сегодня, отладчик считается комплексной и неотъемлемой частью Microsoft Visual Studio.

Дневники чайника. Чтива 0, виток0

— Так кто вы всё-таки будете?
— Асм есть Царь!
(Из кинофильма «Иван Васильевич меняет профессию»)

Благодарность

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

Также уроков могло не быть без Плохиша (Bad_guy, извини, что так назвал :). Он посадил зерно crackl@b’a на просторы инета и ухаживал за ним все эти годы, пока проект превращался в дерево знаний. Спасибо zer0 за управление разделом статей.

Спасибо всем участникам нашего форума и «wasm.ru/forum» за помощь и науку, особенно: Leo, S_T_A_S_,Staier, The Svin.

Ну и, конечно, отдельное спасибо Седому (SeDoYHg или SeDoY) за огромную помощь в написании Чтивы 0 и за критику первых статей. Я даже могу сказать, что почти все главы здесь под редакцией Седого.

Да, чуть не забыл, без моей мамы текст был бы полон «обшибак и слеганца бесграматен» :).

А без содействия папы вообще бы не стал заниматься Ассемблером (в бизнес бы ударился, стал бы авторитетом, шлёпнули бы где-нибудь у входа в казино — и контрольный выстрел. А так максимум, что светит, — это потёртые данные на винте и радикулит :).

Короче говоря, всем, кто помог, — спасибо.

Пустословие

Как был предусмотрителен Джордж Лукас, когда снял 4-й эпизод «Звёздных Войн». Я понятия не имел, что возникнет потребность написать предчасть. А вот пришлось. После того, как я написал «Чтиву III», прошло 4 месяца.

Дело в том, что первая часть начинается примерно c такой фразы: «Прочтите Рассылку Калашникова и возвращайтесь читать Дневники чайника». Сам дочитал эту рассылку только до десятого урока, дальше идёт морально устаревшая информация.

Надеюсь, что большинство из тех, кто созрел для Асма, поймёт мой рассказ (от 9 до 110 лет :). Если не поймёте, не отчаивайтесь, есть другие дороги. Давно существуют подобные курсы элементарного ликбеза, например:

  • Уже упомянутая рассылка Олега Калашникова «Ассемблер? Это просто!» (устарела, зато сразу практика). Кстати, эта же рассылка на всякий случай лежит и здесь, на Краклабе.
  • «Низкоуровневое программирование для дZенствующих». Сейчас считаю, что это хорошая дорога для начинающих, но когда сам ничего не знал, эти статьи мне не понравились. Решайте сами, подойдут ли они вам сразу. На том же сайте вы найдёте море материала по теме. Искренне благодарен всем, кто трудится над этим ресурсом.
  • Советую в первую очередь обратить внимание на статьи Кибер Маньяка (CyberManiac) из серии «Теоретические основы крэкинга» в разделе статей здесь на Краклабе или на Wasm’e в этом разделе.

В любом случае советую прочесть все известные уроки. В каждом источнике автор по-своему раскладывает тему. Есть много мнений о том, какие аспекты самые важные, и каждая точка зрения для новичка — золото. Остальные интересные ссылки я уже поместил в следующих статьях, так что если вы пожелаете сначала завалиться литературой, а потом разгребать её, можете смело смотреть Чтиву 1,2,3.

Для кого пишу

Предполагается, что читатель не программист вообще, но опытный пользователь и у него есть желание стать настоящим хакером.

Совсм недавно не было никакого Битфрая, я вообще был далёк от программирования. Конечно, проводил много времени за компом и стал толковым юзверем, но я не знаю математики, даже на уровне школы. Год назад я совсем не представлял, что такое написать программу.

Ещё хочу сказать, что не встречал ни одного человека, который разделил бы мою позицию:
самый лучший старт для программиста — это Ассемблер.

Хотя вру, такую точку зрения поддерживают некоторые уважаемые люди. Но явной мысли «начинать надо с Асма» нигде так и не увидил.

Других языков программирования не знаю, и от вас этого требовать не буду. Будет даже лучше, если вы ещё не испорчены такими вещами, как:

В Ассемблере нет оператора «PRINT» и нет даже его подобия. Этот язык может показаться вам странным (как мне другие), если вы привыкли к логике высокоуровневых языков.

В данной статье за главный объект изучения будет принят язык Ассемблер для Intel-совместимых процессоров.

В принципе совершенно неважно, с чего начинать, когда объект полностью неизвестен, всё равно придётся ещё не раз возвращаться к первой выбранной теме.

Возможно, кто-то из вас сразу же предпочтёт прочитать большой учебник. Например:
В.И. Юров
«ASSEMBLER. 2-е издание. Учебник для вузов»
и учебник Зубкова в качестве интересных примеров для программирования (на форуме есть ссылки).

Не нужно искать в моей статье глубокие тайны программирования, и уж совсем не стоит считать Чтиву 0 истиной в последней инстанции.

Но если вы любите обрастать знаниями по ходу экспериментов (как Bitfry), добро пожаловать в мир ассемблера через мою «калитку».

Метод обучения

«Чтива 0» имеет мало общего со своими предками (Чтивы I,II,III), хотя бы потому, что это не мой дневник. Скорее, «Чтива 0» будет Ваш дневник, Ваши ошибки и Ваши уроки ;).

Говорят, «умный учится, глупый учит», если к этой поговорке прибавить мой скромный багаж знаний — я совсем дурак :). Только что начал и уже хочу научить вас думать логикой ассемблера. Ребячество — скажут многие. Но если бы я не верил в успешность предприятия (при некотором усилии с вашей стороны), даже и не стал бы тратить время.

Вы, наверное, согласитесь, что все знания в этой жизни приходят витками. Старые догадки и поступки кажутся ошибочными после каждого такого витка (в чтивах I,II,III полно ошибок).

Человеку для первого, невооружённого, осмотра местности, лучше думать, что земля плоская (поверьте, так будет лучше). Затем он осваивает всё больше и больше, а в какой-то момент до него вдруг доходит: чтобы сложить карты и сопоставить с положением звёзд на небе, нужно представить невероятное — земля, оказывается, шар. Но и это не есть истина, на самом деле земля очень сложной формы, и чтобы описать её более-менее точно, нужно использовать все ресурсы науки и техники. Конца этому процессу не предвидится. То же самое можно сказать и о компьютере. Несмотря на то, что он всего лишь юное творение человека, мы умудрились запутать в нём столько всяких абстракций (которые ему, кстати, мешают), что Ассемблер можно уже воспринимать как насмешку над корнем этого слова.

Сделаю всё возможное, чтоб избежать сложных понятий, также обещаю не допускать тупостей вроде «земля круглая», так как это больше всего сбивает с толку, уж лучше думать, что она плоская, чем круглая :), по крайней мере, я буду стараться так не писать.

Но вернёмся к виткам познаний. В Чтиве 0 мы с вами постараемся смоделировать два таких витка (пока мне так кажется, может быть, их будет больше).

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

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

Таким образом, обе части нулевой чтивы будут иметь одинаковые темы глав.

Пару слов об оформлении

Выделения, как обычно — суть из массы

— Сноски в конце главы

Действия примера

Cравка о командах процессора

Ну и в этих серых блоках будет развлекуха, её читать совсем необязательно, поэтому с неё и начнём :).

Эй, малыш! Да, ты. Можешь раздобыть некоторый скарб для моего корабля.

Инструменты, которые нам пригодятся

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

Перед отправлением в дальний поход необходимо как следует проверить укомплектованность нашего космического корабля.

Поскольку миссия разведывательная, а корабль лёгкого класса, приспособления мы будем подбирать тщательно, чтобы сократить лишнй вес и расходы. Всё наше снаряжение очень скромное по размеру, но могучее по возможностям.

Для начала посмотрите приложенные файлы: need.rar, prax0.rar, prax1.rar, общий размер

500Kb. Там лежат примеры для проверки их работоспособности и кое-что ещё.

0,5Mb. Программа платная.

Версия должна быть для форточек не ниже 6.8 (я использую 7.01).

Если у вас нет этой программы, то в сети вы без проблем найдете её.

Heiw — это консольный шестнадцатиричный редактор с возможностью ассемблировать/дизассемблировать. Незаменимая для исследователей и ассемблерщиков вещь.

FAR manager

3Mb. Программа бесплатная для русскоязычных пользователей.

Подойдёт и новая x64-версия 2.0 и 32-битная. Короче – любая. Порекомендовал бы использовать именно FAR, так как он тоже консольный. Сам я пользуюсь двумя файловыми менеджерами: Total Commander и Far. По опыту могу сказать, что Far можно настроить по сочетанию клавиш один в один с TC, было бы желание. Внешний вид настраивается до мелочей, просто на это надо потратить некоторое время. Far будет приятным и удобным если вы этого захотите, поверьте. Меня, например, дико раздражают мелкие шрифты и кислотные краски стандартной консоли (что Hiew, что Far, что любая другая цветная консольная программа), однако, всегда можно создать ярлычок в котором будут настройки шрифтов и палитра приятная для глаза. Ярлык для Far’a с моими любимыми цветами я прикрепил в файл need.rar. Кроме того можно настроить цветовую схему. Hiew и Far имеют богатые возможности в этом плане. Пробуйте. Однако если вам совсем не нравятся консоли, можете использовать что-то типа TC или обычный проводник.

CodeView (CV)

Сайт программы: microsoft.com. В принципе программа доступна для бесплатного скачивания где-то в дебрях Майкрософта, однако она является лишь придатком к довольно большому ненужному пакету, который входит в дополнение (не помню к чему). Отыскать её там будет непросто. Я выложил эту довольно старую программу у себя (в том же архиве need.rar).

Ещё CV входит в старый MASM (v5x,v6x) который входит в VisualC++ (версии не знаю).

CodeView — программа-отладчик (по-ихнему debugger — исправлятель ошибок). Отладчики помогают программистам понять, что делает их программа. 🙂 Когда этот светлый миг наступает, становится понятно, где ошибка.

Немалую часть времени написания программы программист проводит в отладчике, поэтому выбор дебагера — очень больной вопрос. Я остановился на CodeView, потому что не смог подобрать другого отладчика для первых шести примеров. Однако слишком погружаться в CV не стоит, так как он устарел и в реальной практике вряд ли вам пригодится.

OllyDbg

1Mb. Программой можно пользоваться бесплатно с разрешения автора.

На 07.12.2011 последняя версия Oлли — 2.01 alpha 4, но можно использовать и старую стабильную 1.10.

А вот этот отладчик на сегодняшний день самый актуальный на платформах вплоть до Win7 x64 на уровне 32-битных приложений. OllyDbg — самый многофункциональный отладчик прикладных программ Win32. Но как только появится хороший подходящий для нас отладчик x64, сразу возьмусь переписывать уроки под него.

MASM32 SDK

4Mb. Программа бесплатная.

Проект Стива Хатчисона (Steve Hutchesson). MASM32 – это современный пакет языка Ассемблер, собранный на основе компилятора MicroSoft.

Существует ещё пакет MASM (Macro Assembler) — это древний DOS’овый пакет от самой MS. Нам он не нужен, так же как и NASM, TASM, TASM32 и т.д.

На сегодняшний день единственной разумной альтернативой MASM32 является FASM. Сам я использую и FASM, и MASM32, но тему FASM’a затрагивать пока не будем.

Что такое «пакет языка Ассемблер»?

В стандартный пакет языка программирования входят:

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

Всё это нам понадобится не сразу, а постепенно, по мере необходимости. Поэтому не бросайтесь сейчас же изучать и осваивать все вышеперечисленные приборы. Однако Hiew и CodeView нужны будут сразу же после вылета с базовой станции.

На Windows версии x64 (7/Vista/XP или Server) в первые дни вам понадобится какой-нибудь эмулятор DOS-режима для запуска com-программ. Можно использовать громоздкий Virtual PC от MS или VMWare, но я предлагаю (спасибо Григорию за подсказку) маленький удобный эмулятор:

DOSbox

1,5Mb. Программа бесплатная.

Без этой программы можно обойтись на 32-битной WinXP. На Висте и Семёрке x86 лично не проверял, но говорят, можно обойтись режимом совместимости (пробуйте и отпишитесь в гостевой по результатам).

Не смущайтесь, что версия называется «Win32 installer», она поможет и на системе x86, и на x64 эмулировать режим старой-доброй DOS для наших первых примеров. DOSbox устанавливается за пару секунд, и его очень легко настроить. Нужно всего лишь смонтировать папку с com-примерами и туда же кинуть все файлы отладчика CV. Монтаж выполняется одной командой. Например:

где «d:\prax » – это папка на реальном диске D, в которой должны быть свалены воедино ваши com-примеры и файлы отладчика CV. А «c» – это уже виртуальный диск внутри dosbox’a.

Далее переходим на новый виртуальный диск командой

Что потом – читайте уже в следующей главе. Можно, кстати, батничек сделать. Разумеется, надо знать основы языка команд DOS и DOSbox (на сайте программы есть русская документация). Сразу рекомендую главу специально для пользователей, впервые очутившихся в DOS-мире.

Инструменты, которые нам НЕ пригодятся.

Молоток, кувалда, бензопила и другие приспособления, которые, возможно, вы захотите применить в первые дни полёта. Адаптация к условиям невесомости проходит у многих крайне тяжело. Возможны потеря ориентации, головокружения и прочие побочные эффекты. Уберите подальше от компьютера тяжёлые и твёрдые предметы — компьютер не виноват, это всего лишь машина.

Кажется, можно отправляться.

Ещё раз повторю, виток0 нужен только для того, чтоб у вас возникли вопросы, я вовсе не предполагаю, что вы поймёте всё и сразу.

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

Читайте также:  Racing для windows mobile
Оцените статью