lnlidawei

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

[nasm]:  nasm汇编语言笔记和心得

 

 

 

 

 一、笔记内容

1.    ascii:    分为ascii字符和ascii码值
    --    ascii字符            ascii码值
    |                ascii码值(十进制)    ascii码值(十六进制)
    |    A            65                0x41
    |    a            97                0x61
    |    0            48                0x30
    |    1            49                0x31




2.    stdin    =    123456"helloworld"
    --    stdin,    输入内容视为'ascii'类型的'byte'字符串。
    --    ascii,    属于'编码'类型
    --    byte,    属于'存储'类型




3.     ./asm_test     123     456     "helloworld"
    --    123456, helloworld:  被视为ascii字符串,ascii的字符存储单位为byte(1byte=8bits)




4.        ./asm_add    123    456
    --    123    =    '123'(type=ascii, size=3 bytes)    =    byte    1,2,3
    --    456    =    '456'(type=ascii, size=3 bytes)    =    byte    4,5,6

    --    用于十进制数的计算:    123(ascii) 转化为    123(decimal):
            --    输入内容:    123实质为1,23,为ascii字符。
            --    查表:        123 =    (ascii)1,2,3 = 0d49, 0d50, 0d51
            --    查表:        456 =    (ascii)4,5,6 = 0d52, 0d53, 0d54
            --    (((( (0d49-0d48)x0d10+(0d50-0d48))x0d10)+(0d51-0d40))x0d10)/0d10=0d123(decimal)
            --    (((( (      1       )x10     +(     2   ))x10  )+(   3       ))x10  )/10    =0d123(decimal)
    --    (将‘十进制的数’输出到stdout):    123(decimal)转化为123(ascii)
            --    123    分成    123 的算法
                --    a[0]= 123%10 = 3,    r=123/10=12
                --    a[1]= 12%10  = 2,    r=12/10=1
                --    a[2]= 1%10   = 1,    r=1/10=0
                --    if r=0, 停止计算,
                --    统计余数,倒序列出, a[2]=1=0d1, a[1]=2=0d2, a[0]=3=0d3
                --    查表,    ascii 1 = 0d49 = 0d1 + 0d48    = 0x31
                --    查表,    ascii 2 = 0d50 = 0d2 + 0d48    = 0x32
                --    查表,    ascii 3 = 0d51 = 0d3 + 0d48    = 0x33
                --    (相当于)整理字符串:    out  byte  0    0x31, 0x32, 0x33
                --    int 0x80,使用系统调用sys_write输出到stdout

 

 

 

 

二、参考资料:

 

  1、  nasm_courses  -  https://asmtutor.com/

 

posted on 2024-10-29 01:16  lnlidawei  阅读(10)  评论(0编辑  收藏  举报