码迷,mamicode.com
首页 > 编程语言 > 详细

《汇编语言基础教程》第一章

时间:2017-10-08 18:06:01      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:mov指令   ring   tac   extent   容量   立即数   blog   ack   个人   

.386                ;386处理器
.model flat,c        ;保护模式下运行,可与C连接
.stack 100h            ;堆栈大小

.data                ;数据段标记
num1 sdword ?        ;singned double word
num2 sdword ?        ;dword(32bit)、sword(16bit)、word(16bit)、sbyte(8bit)、byte(8bit);
letter1 byte ?
letter2 byte ?

    .code            ;代码段标记
main proc            ;过程(process)名称标记main,可替换
    mov num1,5        
    mov eax,num1    ;eax -- extent ax
    mov num2,eax
    
    mov letter1,A
    mov al,letter1
    mov letter2,al
    ret

main endp            ;process结束, endprocess
    end                ;程序结束


    ;mov指令
    ;mov 内存,立即数          mov num1,5
    ;mov 寄存器,内存          mov eax,num1
    ;mov 内存,寄存器          mov num2,eax
    ;mov 寄存器,立即数
    ;mov 寄存器,寄存器
    
    
    ; 1、CPU-Central Process Unit 其内包含寄存器,用于暂存、处理,指令和数据
      
    ; 2、缓存是位于CPU与内存之间的临时存储器,它的容量比内存小的多但是交换速度却比内存要快得多。
    ;     高速缓存的出现主要是为了解决CPU运算速度与内存读写速度不匹配的矛盾,因为CPU运算速度要比内存读写速度快很多
    
    ;* 3、数据并不能从一个内存单元到另一个内存单元,类似 y = x 的操作实际上:x处内容->CPU中的寄存器->y处
    
    ; 4、寄存器大小
    ; |<----   eax   ---->|
    ;           |<-- ax-->|
    ;            |<ah>|<al>|
    ;31       16 15       0 /bit

    ;5、常用寄存器
    ;eax    add
    ;ebx    block(array)
    ;ecx    cycle/count
    ;edx    data
    ;以上为通用寄存器(后注释仅方便个人记忆)
    ;esi    serch            array/string
    ;edi    destination        array/string
    ;esp    stack pointer
    ;ebp    bottom
    ;eip    instruction pointer
    ;eflags flags
    ;
    ;
    ;
    ;
    ;

 

《汇编语言基础教程》第一章

标签:mov指令   ring   tac   extent   容量   立即数   blog   ack   个人   

原文地址:http://www.cnblogs.com/-Yrqm/p/7637998.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!