Библиотека knigago >> Компьютеры: Языки и системы программирования >> Assembler >> Программирование на ассемблере х64. От начального уровня до профессионального использования AVX


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 1291, книга: «Патриоты»
автор: Арон Тамаши

"Патриоты" Арона Тамаши - захватывающий и провокационный роман, исследующий темные глубины национализма и его разрушительные последствия. Действие романа происходит в вымышленном венгерском городке, где местное население охвачено ненавистью и страхом. Разжиганием беспорядков занимается харизматичный лидер, Андраш Алмаси, который использует пропаганду и насилие, чтобы посеять раздор. Главный герой, Даниэль Ференци, молодой учитель, становится свидетелем растущего фанатизма. Он...

Йо Ван Гуй - Программирование на ассемблере х64. От начального уровня до профессионального использования AVX

Программирование на ассемблере х64. От начального уровня до профессионального использования AVX
Книга - Программирование на ассемблере х64. От начального уровня до профессионального использования AVX.  Йо Ван Гуй  - прочитать полностью в библиотеке КнигаГо
Название:
Программирование на ассемблере х64. От начального уровня до профессионального использования AVX
Йо Ван Гуй

Жанр:

Assembler

Изадано в серии:

неизвестно

Издательство:

ДМК Пресс

Год издания:

ISBN:

978-5-97060-929-3

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Программирование на ассемблере х64. От начального уровня до профессионального использования AVX"

Цель этой книги – показать, как используются инструкции языка ассемблера, и научить читателей программировать на нем – начиная с создания самых простых программ и заканчивая использованием расширенной системы команд Advanced Vector Extensions (AVX). Для изучения практической части потребуется знание основы программирования на каком-либо языке высокого уровня, например C. Теоретический материал сведен к необходимому минимуму: немного информации о двоичных числах, краткое описание логических операторов и кое-что об основах линейной алгебры. Исходный ассемблерный код представлен в виде завершенных программ, которые читатель может протестировать на своем компьютере и поэкспериментировать с ними. Рассматриваются инструментальные средства, которыми можно воспользоваться, и потенциальные проблемы при использовании этих инструментов. Основная часть книги содержит информацию о применении ассемблера в ОС Linux; несколько заключительных глав описывают работу в Windows. Книга предназначена для программистов на языках высокого уровня, а также для системных инженеров и инженеров по обеспечению безопасности, работающих в области исследования вредоносного программного обеспечения.

Читаем онлайн "Программирование на ассемблере х64. От начального уровня до профессионального использования AVX". [Страница - 110]

119
Calling convention 112
circle.asm, файл, содержащий только
внешние функции 108
circle.asm, файл функции 160
cld, инструкция 177
cmpsb, инструкция 174, 177, 178
cmp, инструкция 69, 182
Conditional assembly 145, 152
CountReg 174
cpuid, инструкция 179, 290
CreateFileA, функция Windows API 323
createFile, функция 152
cvtss2sd, инструкция 199, 202
Cтек 88

Предметный указатель  329

D

Data Display Debugger (DDD),
отладчик 60
DDD, отладчик 91
использование команд
отладчика GDB 62
исследование памяти 62
DDD, отладчик
наблюдение за изменением
регистров 62
dec, инструкция 84
DF, флаг направления 173, 177
divsd, инструкция 195
divss, инструкция 97
Double precision 94
dwarf, формат отладки 23

E

eflags, регистр флагов в SASM 69
elf64, Executable and Linkable Format
for 64-bit 23
ELF, формат выполняемого файла
поддержка в NASM 76
extern, ключевое слово, объявление
внешней функции 108
extractps, инструкция 255

F

FPU-инструкция 95
function2.asm,
программа 100
function4.asm, программа 107
function.asm, программа 99

G

GCC, GNU Compiler Collection 21
gdb memory, команда 76
GDB, отладчик 36, 155, 302
информация о регистрах 42
команда
tui enable 45
прерывание работы программы 42
процесс отладки программы 37
gedit, текстовый редактор 20
GetStdHandle, функция Windows
API 306
global, ключевое слово,
объявление глобальной
переменной 108
grep, утилита 77

H

haddpd, инструкция 270
handling port 5 pressure, в руководстве
Intel 292
hello world, программа 19
улучшенная версия 45

I

icalc.asm, программа 81
IDE, integrated development
environment 21
idiv, инструкция 87
IEEE-754, международный стандарт 32
imm8, управляющий байт для строк
SSE 208
IntRes1 209
IntRes2 210
использование битов 209
imul, инструкция 85
inc, инструкция 84

J

jge, инструкция 69
jmp, инструкция 70
jnz, инструкция 177
jump.asm, программа 66
jumploop.asm, программа 70
jz, инструкция 177, 218

L

ldmxcsr, инструкция 189, 195
leave, инструкция 100
lea, инструкция 75, 173
lodsb, инструкция 178
loop, инструкция 71, 90

M

makefile 22
расширенная версия 110
MASM 298
memory.asm, программа 73
MinGW (Minimalist GNU for
Windows) 299
MinGW-w64 299
MMX 184
movapd, инструкция 202
movaps, инструкция 202
movdqa, инструкция 206
movdqu, инструкция 231
move.asm, программа 60
movq, инструкция 55

330



Предметный указатель

movsb, инструкция 173, 174
movsd, инструкция 97, 174
movss, инструкция 97, 199
movsw, инструкция 174
movupd, инструкция 199
movups, инструкция 199
mov, инструкция 27, 75
mulss, инструкция 97
mul, инструкция 85
mxcsr, регистр 271
mxcsr, регистр управления и состояния
SSE 188, 195
значения битов 188
MXCSR, регистр флагов для SIMD 35

N

NASM 21, 134, 152, 202, 298
nasm -v, команда 298
NASM, версия ассемблера 20
neg, инструкция 58
nop, инструкция 40
NOT, логический оператор 57

O

objdump, утилита командной строки
136
OR, логический оператор 57

P

paddd, инструкция 206
PATH, переменная среды Windows 298
pcharsrch, функция 241
pcmpestri, инструкция 207, 225
pcmpestrm, инструкция 207, 237
pcmpistri, инструкция 207, 214, 218,
221, 241
pcmpistrm, инструкция 207, 237, 241
pextrd, инструкция 206
PIE, position independent executable,
перемещаемый код 24
pinsrb, инструкция 218, 241
pinsrd, инструкция 206, 231
pmovmskb, инструкция 242
popcnt, инструкция 242
popf, инструкция 91
pop, инструкция 88
PowerShell 299
printb, функция 121
printdpfp, функция 199
printf, функция 53, 86, 99, 108, 111,
112, 115

printspfp, функция 199, 202
printString, функция 152
prints, функция 142
print_xmm, функция 195
pshufb, инструкция 235
pshufd, инструкция 234, 282
pshufhw, инструкция 234
pshuflw, инструкция 234
pshufw, инструкция 234
pstrcmp, функция 221, 225
pstrlen, функция 214
pstrln, функция 241
pstrscan_f, функция 218
pstrscan_l, функция 218
pushf, инструкция 91
push, инструкция 88
pxor, инструкция 214, 218

R

rax, регистр 27, 63, 75, 85, 100, 125
rbp, регистр указателя базы стека 104
rbx, регистр 71
rdi, регистр 28, 152
rdtscp, инструкция 291
rdtsc, инструкция 290
rdx, регистр 28
readelf, утилита 76
ReadFile, функция Windows API 323
reads, функция 142
rect.asm, файл функции 160
Register constraint 168
repe, инструкция 178
repne, инструкция 178
reverse_xmm0, функция 241
rflags, регистр флагов процессора 34, 69
rip, регистр 43
rip, регистр счетчика команд 34
rol, инструкция 126
ror, инструкция 126
rsp, регистр указателя стека 74, 88, 93

S

sal, инструкция 84, 125
sar, инструкция 85, 125
SASM 36, 64, 143, 299, 302
диалоговая панель Settings
(Параметры настройки) 65
строка Linking Options (Параметры
связывания) 111
scasb, инструкция 174, 178
section .bss, раздел программы 27

Предметный указатель  331
section .data, раздел программы 25
section .txt, раздел программы 27
seq_trace, функция 296
seq_transpose, функция 291
setCC, группа инструкций 132
setc, инструкция 132
SetFilePointer, функция Windows API 323
setnz, инструкция --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.