vault backup: 2024-01-05 22:40:47
This commit is contained in:
parent
89b03969bd
commit
dc69f5dd7a
22
.obsidian/workspace-mobile.json
vendored
22
.obsidian/workspace-mobile.json
vendored
@ -13,7 +13,7 @@
|
||||
"state": {
|
||||
"type": "markdown",
|
||||
"state": {
|
||||
"file": "FASM.md",
|
||||
"file": "X86/Общего назначения.md",
|
||||
"mode": "source",
|
||||
"source": true
|
||||
}
|
||||
@ -85,7 +85,7 @@
|
||||
"state": {
|
||||
"type": "backlink",
|
||||
"state": {
|
||||
"file": "FASM.md",
|
||||
"file": "X86/Общего назначения.md",
|
||||
"collapseAll": false,
|
||||
"extraContext": false,
|
||||
"sortOrder": "alphabetical",
|
||||
@ -102,7 +102,7 @@
|
||||
"state": {
|
||||
"type": "outgoing-link",
|
||||
"state": {
|
||||
"file": "FASM.md",
|
||||
"file": "X86/Общего назначения.md",
|
||||
"linksCollapsed": true,
|
||||
"unlinkedCollapsed": false
|
||||
}
|
||||
@ -114,7 +114,7 @@
|
||||
"state": {
|
||||
"type": "outline",
|
||||
"state": {
|
||||
"file": "FASM.md"
|
||||
"file": "X86/Общего назначения.md"
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -141,13 +141,17 @@
|
||||
"homepage:Open homepage": false
|
||||
}
|
||||
},
|
||||
"active": "908ebfd0d59a0fdb",
|
||||
"active": "de240db6ce2a66fa",
|
||||
"lastOpenFiles": [
|
||||
"X86/Общего назначения/Двоичные арифметические",
|
||||
"X86/Общего назначения/Передачи данных/MOVZX.md",
|
||||
"X86/Общего назначения/Передачи данных/MOVSX(D).md",
|
||||
"X86/Общего назначения.md",
|
||||
"X86/Общего назначения/Передачи данных/CBW,CWDE,CDQE.md",
|
||||
"X86.md",
|
||||
"Оглавление.md",
|
||||
"FASM.md",
|
||||
"X86/Общего назначения.md",
|
||||
"X86/Общего назначения/Передачи данных/CWD,CDQ,CQO.md",
|
||||
"X86.md",
|
||||
"X86/Общего назначения/Передачи данных/OUT.md",
|
||||
"X86/Общего назначения/Передачи данных/IN.md",
|
||||
"X86/Общего назначения/Передачи данных/POPA(D).md",
|
||||
@ -167,14 +171,10 @@
|
||||
"X86/Общего назначения/Передачи данных/BSWAP.md",
|
||||
"X86/Общего назначения/Условия.md",
|
||||
"Команды.md",
|
||||
"Команды 1.md",
|
||||
"Команды%2FОбщего назначения%2FПередачи данных%2FXCHG.md",
|
||||
"Untitled",
|
||||
"Общегоы/Общего назначения/Передачи данных/MOV.md",
|
||||
"Общегоы/Общего назначения",
|
||||
"Общегоы",
|
||||
"Общегоы/Общего назначения/Передачи данных",
|
||||
"Команды%2FОбщего назначения%2FПередачи данных%2FMOV.md",
|
||||
"Untitled.canvas",
|
||||
"Общего_назначения",
|
||||
"X86/Общего назначения/Передачи данных",
|
||||
|
@ -1,25 +1,25 @@
|
||||
## Команды передачи данных
|
||||
| Команды | Описание |
|
||||
| -------------------------------------------------------------------------------:|:----------------------------------------------------- |
|
||||
| ------------------------------------------------------------------------------:|:----------------------------------------------------- |
|
||||
| [MOV](Общего%20назначения/Передачи%20данных/MOV.md) | Присваивание |
|
||||
| [CMOVxx](Общего%20назначения/Передачи%20данных/CMOVxx.md) | Условное присваивание |
|
||||
| [XCHG](Общего%20назначения/Передачи%20данных/XCHG.md) | Обмен значений |
|
||||
| [BSWAP](Общего%20назначения/Передачи%20данных/BSWAP.md) | Перестановка байтов |
|
||||
| [XADD](Общего%20назначения/Передачи%20данных/XADD.md) | Обмен и сложение |
|
||||
| [CMPXCHG](Общего%20назначения/Передачи%20данных/CMPXCHG.md) | Сравнение и обмен |
|
||||
| [CMPXCHG8B, CMPXCHG16B](Общего%20назначения/Передачи%20данных/CMPXCHG8(16)B.md) | Сравнение и обмен 8/16 байтов |
|
||||
| [CMPXCHG8B/CMPXCHG16B](Общего%20назначения/Передачи%20данных/CMPXCHG8(16)B.md) | Сравнение и обмен 8/16 байтов |
|
||||
| [PUSH](Общего%20назначения/Передачи%20данных/PUSH.md) | Поместить значение в стек |
|
||||
| [POP](Общего%20назначения/Передачи%20данных/POP.md) | Взять значение из стека |
|
||||
| [PUSHA/PUSHAD](Общего%20назначения/Передачи%20данных/PUSHA(D).md) | Поместить значения регистров общего назначения в стек |
|
||||
| [POPA/POPAD](Общего%20назначения/Передачи%20данных/POPA(D).md) | Взять значения регистров общего назначения из стека |
|
||||
| [IN](Общего%20назначения/Передачи%20данных/IN.md) | Прочитать значение из порта ввода/вывода |
|
||||
| [OUT](Общего%20назначения/Передачи%20данных/OUT.md) | Записать значение в порт ввода/вывода |
|
||||
| CWD | Преобразовать Word в DWord |
|
||||
| CDQ | Преобразовать DWord в QWord |
|
||||
| CBW | Преобразовать Byte в Word |
|
||||
| CWDE | Преобразовать Word в DWord в регистре eax |
|
||||
| MOVSX | Присвоить и расширить с учетом знака |
|
||||
| MOVZX | Присвоить и расширить нулевым значением |
|
||||
| [CWD](Общего%20назначения/Передачи%20данных/CWD,CDQ,CQO.md) | Преобразовать Word в DWord |
|
||||
| [CDQ](Общего%20назначения/Передачи%20данных/CWD,CDQ,CQO.md) | Преобразовать DWord в QWord |
|
||||
| [CBW](Общего%20назначения/Передачи%20данных/CBW,CWDE,CDQE.md) | Преобразовать Byte в Word |
|
||||
| [CWDE](Общего%20назначения/Передачи%20данных/CBW,CWDE,CDQE.md) | Преобразовать Word в DWord в регистре eax |
|
||||
| [MOVSX](Общего%20назначения/Передачи%20данных/MOVSX(D).md) | Присвоить и расширить с учетом знака |
|
||||
| [MOVZX](Общего%20назначения/Передачи%20данных/MOVZX.md) | Присвоить и расширить нулевым значением |
|
||||
|
||||
## Двоичные арифметические команды
|
||||
|
||||
|
5
X86/Общего назначения/Передачи данных/CBW,CWDE,CDQE.md
Normal file
5
X86/Общего назначения/Передачи данных/CBW,CWDE,CDQE.md
Normal file
@ -0,0 +1,5 @@
|
||||
| Opcode | Instruction | Op/En | 64-bit Mode | Compat/Leg Mode | Description |
|
||||
| ---------- | ----------- | ----- | ----------- | --------------- | -------------------------- |
|
||||
| 98 | CBW | ZO | Valid | Valid | AX := sign-extend of AL. |
|
||||
| 98 | CWDE | ZO | Valid | Valid | EAX := sign-extend of AX. |
|
||||
| REX.W + 98 | CDQE | ZO | Valid | N.E. | RAX := sign-extend of EAX. |
|
10
X86/Общего назначения/Передачи данных/MOVSX(D).md
Normal file
10
X86/Общего назначения/Передачи данных/MOVSX(D).md
Normal file
@ -0,0 +1,10 @@
|
||||
| Opcode | Instruction | Op/En | 64-Bit Mode | Compat/Leg Mode | Description |
|
||||
| ---------------- | ----------------- | ----- | ----------- | --------------- | -------------------------------------------------- |
|
||||
| 0F BE /r | MOVSX r16, r/m8 | RM | Valid | Valid | Move byte to word with sign-extension. |
|
||||
| 0F BE /r | MOVSX r32, r/m8 | RM | Valid | Valid | Move byte to doubleword with sign-extension. |
|
||||
| REX.W + 0F BE /r | MOVSX r64, r/m8 | RM | Valid | N.E. | Move byte to quadword with sign-extension. |
|
||||
| 0F BF /r | MOVSX r32, r/m16 | RM | Valid | Valid | Move word to doubleword, with sign-extension. |
|
||||
| REX.W + 0F BF /r | MOVSX r64, r/m16 | RM | Valid | N.E. | Move word to quadword with sign-extension. |
|
||||
| 63 /r1 | MOVSXD r16, r/m16 | RM | Valid | N.E. | Move word to word with sign-extension. |
|
||||
| 63 /r1 | MOVSXD r32, r/m32 | RM | Valid | N.E. | Move doubleword to doubleword with sign-extension. |
|
||||
| REX.W + 63 /r | MOVSXD r64, r/m32 | RM | Valid | N.E. | Move doubleword to quadword with sign-extension. |
|
7
X86/Общего назначения/Передачи данных/MOVZX.md
Normal file
7
X86/Общего назначения/Передачи данных/MOVZX.md
Normal file
@ -0,0 +1,7 @@
|
||||
| Opcode | Instruction | Op/En | 64-Bit Mode | Compat/Leg Mode | Description |
|
||||
| ---------------- | ---------------- | ----- | ----------- | --------------- | ---------------------------------------- |
|
||||
| 0F B6 /r | MOVZX r16, r/m8 | RM | Valid | Valid | Move byte to word with zero-extension. |
|
||||
| 0F B6 /r | MOVZX r32, r/m8 | RM | Valid | Valid | Move byte to doubleword, zero-extension. |
|
||||
| REX.W + 0F B6 /r | MOVZX r64, r/m81 | RM | Valid | N.E. | Move byte to quadword, zero-extension. |
|
||||
| 0F B7 /r | MOVZX r32, r/m16 | RM | Valid | Valid | Move word to doubleword, zero-extension. |
|
||||
| REX.W + 0F B7 /r | MOVZX r64, r/m16 | RM | Valid | N.E. | Move word to quadword, zero-extension. |
|
Loading…
x
Reference in New Issue
Block a user