当前位置:网站首页>Basic knowledge of assembly language
Basic knowledge of assembly language
2022-07-06 17:02:00 【My71】
Edit program steps
- Edit the source program , extension .asm
- assembly : Turn the source program file into the target file , Target file extension .obj
- Connect : Turn the target file into an executable , Executable extension .exe
Instructions
mount
mount Target drive letter Local drive letter
Clear the screen :cls
Delete file :del file name
see file :type file name
Assembly instruction :masm file name
Connection instructions :link file name
Programming
Create source program
Instructions edit
grammar
edit file name .asm
If the file already exists, open the file to continue writing , If it does not exist, a new file will be created .
Segment definition
Instructions :segment( Start ) ends( end )
Paragraph name : No more than eight characters
grammar
Paragraph name segment Paragraph name ends
Segment Association
Instructions :assume
type :CS( Code segment )、DS( Data segment )、SS( stack segment )、ES( Additional segment )
grammar :
assume type : Paragraph name
example : Define a code snippet , Segment name code
code segment assume cs:code code ends
Store value
Instructions :mov
General registers :AX、BX、CX、DX
grammar mo
mov General registers , value
- General registers : Destination operands
- value : Source operands
End procedure
mov ah,4ch
int 21h
Instruction classification
- Double operand instruction : Separate the two parameters with commas , The one before the comma is called the destination operand , The one after the comma is called the original operand .
- Single operand instruction
- No operand instruction
- In all double operand instructions , The destination operand and source operand types must match .
- 8086 There must be registers in the instruction , In addition to immediate addressing .
debug Instructions
- sign out :q
- see CPU register :r
- Disassembly instruction :u
- Execute program instructions :g(g offset )
- View memory bill :d
边栏推荐
- LeetCode 1566. Repeat the pattern with length m at least k times
- Usage of insert() in vector
- 原型链继承
- "One year after graduation, I won ACL best paper"
- Shell_ 05_ operator
- 在 vi 编辑器中的命令模式下,删除当前光标处的字符使用 __ 命 令。
- 100张图训练1小时,照片风格随意变,文末有Demo试玩|SIGGRAPH 2021
- 唯有学C不负众望 TOP1环境配置
- 「博士毕业一年,我拿下 ACL Best Paper」
- Typescript basic operations
猜你喜欢
Alibaba cloud server docker installation mysql5.5
亮相Google I/O,字节跳动是这样应用Flutter的
~85 transition
[graduation project] QT from introduction to practice: realize imitation of QQ communication, which is also the last blog post in school.
8086 CPU 内部结构
IDEA断点调试技巧,多张动图包教包会。
Fdog series (V): use QT to imitate QQ to realize login interface to main interface, function chapter.
LeetCode 1558. Get the minimum number of function calls of the target array
Record the error reason: terminate called after throwing an instance
~Introduction to form 80
随机推荐
was unable to send heartbeat
LeetCode 1640. Can I connect to form an array
LeetCode1556. Thousand separated number
谢邀,人在工区,刚交代码,在下字节跳动实习生
LeetCode 1562. Find the latest group of size M
~76 sprite map
[unsolved] 7-15 shout mountain
唯有学C不负众望 TOP3 Demo练习
Shell_ 02_ Text three swordsman
字节跳动海外技术团队再夺冠:高清视频编码已获17项第一
After the subscript is used to assign a value to the string type, the cout output variable is empty.
LeetCode 1558. Get the minimum number of function calls of the target array
Error occurred during initialization of VM Could not reserve enough space for object heap
Shell_ 05_ operator
Record the error reason: terminate called after throwing an instance
唯有学C不负众望 TOP2 p1变量
MySQL数字函数
7-6 sum of combinatorial numbers
Activiti目录(五)驳回、重新发起、取消流程
~72 horizontal and vertical alignment of text