当前位置: 首页 > news >正文

做网站专业长沙seo行者seo09

做网站专业,长沙seo行者seo09,济南源聚网络公司,全国的p2p网站建设C语言的类型转换很重要,经常出现,但是往往不被人注意,而在汇编代码当中就暴露无遗了。 如下列代码: char ch; while ((ch getchar()) ! #) putchar(ch); 反汇编后: .text:00401006 mov…

C语言的类型转换很重要,经常出现,但是往往不被人注意,而在汇编代码当中就暴露无遗了。

如下列代码:

char ch; 

while ((ch = getchar()) != '#')
        putchar(ch);

反汇编后:

.text:00401006                 mov     eax, stru_407030._cnt
.text:0040100B                 sub     eax, 1
.text:0040100E                 mov     stru_407030._cnt, eax
.text:00401013                 cmp     stru_407030._cnt, 0
.text:0040101A                 jl      short loc_40103D
.text:0040101C                 mov     ecx, stru_407030._ptr
.text:00401022                 movsx   edx, byte ptr [ecx]
.text:00401025                 and     edx, 0FFh
.text:0040102B                 mov     [ebp+var_8], edx
.text:0040102E                 mov     eax, stru_407030._ptr
.text:00401033                 add     eax, 1
.text:00401036                 mov     stru_407030._ptr, eax
.text:0040103B                 jmp     short loc_40104D
.text:0040103D ; ---------------------------------------------------------------------------
.text:0040103D
.text:0040103D loc_40103D:                             ; CODE XREF: _main+1Aj
.text:0040103D                 push    offset stru_407030 ; File
.text:00401042                 call    __filbuf
.text:00401047                 add     esp, 4
.text:0040104A                 mov     [ebp+var_8], eax ; 这里是重点 注意getchar()的返回类型是int,要赋给char需要类型转换

;以上都是getchar()的汇编代码,在很多实现中,getchar()只是一个macro,所以才会展开这么多代码

.text:0040104D
.text:0040104D loc_40104D:                             ; CODE XREF: _main+3Bj
.text:0040104D                 mov     cl, byte ptr [ebp+var_8] 
.text:00401050                 mov     [ebp+var_4], cl
.text:00401053                 movsx   edx, [ebp+var_4] ;同样,0x23h是int类型,和它比较也要做转换,所以要用带符号扩展的movsx
.text:00401057                 cmp     edx, 23h
.text:0040105A                 jz      short loc_4010B4 ;以下是putchar()的代码

.text:0040105C                 mov     eax, File._cnt
.text:00401061                 sub     eax, 1
.text:00401064                 mov     File._cnt, eax
.text:00401069                 cmp     File._cnt, 0
.text:00401070                 jl      short loc_40109A
.text:00401072                 mov     ecx, File._ptr
.text:00401078                 mov     dl, [ebp+var_4]
.text:0040107B                 mov     [ecx], dl
.text:0040107D                 movsx   eax, [ebp+var_4]
.text:00401081                 and     eax, 0FFh
.text:00401086                 mov     [ebp+var_C], eax
.text:00401089                 mov     ecx, File._ptr
.text:0040108F                 add     ecx, 1
.text:00401092                 mov     File._ptr, ecx
.text:00401098                 jmp     short loc_4010AF
.text:0040109A ; ---------------------------------------------------------------------------
.text:0040109A
.text:0040109A loc_40109A:                             ; CODE XREF: _main+70j
.text:0040109A                 push    offset File     ; File
.text:0040109F                 movsx   edx, [ebp+var_4]
.text:004010A3                 push    edx             ; Ch
.text:004010A4                 call    __flsbuf
.text:004010A9                 add     esp, 8
.text:004010AC                 mov     [ebp+var_C], eax
.text:004010AF
.text:004010AF loc_4010AF:                             ; CODE XREF: _main+98j
.text:004010AF                 jmp     loc_401006

http://www.tj-hxxt.cn/news/108228.html

相关文章:

  • WordPress 站点图标链接免费做网站自助建站
  • 中华建设网站网络营销师证书查询
  • 网页制作公司seo外链发布
  • 黄志达设计公司官网济南seo小黑seo
  • 西宁最新通告今天重庆专业seo
  • 网站内容完全改变被kseo网站推广什么意思
  • 画册设计公司网站怎么优化整站
  • 咋把网站制作成软件一个万能的营销方案
  • 推广网站优化怎么做微信指数查询
  • 做会计网站的流程图网站seo优化
  • 深圳企业做网站公深圳网站优化软件
  • 腾讯免费网站空间清博舆情系统
  • 阜阳做网站的seo黑帽技术
  • 网站规划设计是什么河南新站关键词排名优化外包
  • wordpress 搜索不能用深圳seo推广外包
  • 网页制作与网站建设 在线作业关键词排名怎样
  • 腾讯企业邮箱手机版seo厂家电话
  • 大理网站开发深圳网络营销平台
  • 织梦网站移动化搜索引擎网站优化和推广方案
  • 优惠券网站怎么做代理百度移动首页
  • 如何访问win7下做的网站搜索引擎优化的内容
  • 进入qq空间登录杭州百度快照优化排名推广
  • 一个小网站一般多少钱营销方案范文100例
  • 上海做门户网站的公司深圳网站建设资讯
  • 佛山智唯网站建设百度灰色关键词排名
  • 内蒙古网站制作公司四川百度推广和seo优化
  • 网站怎么做footer抚顺优化seo
  • 如何用txt做网站时增加照片教育培训网
  • 宁波网站建设设计图成全在线观看免费高清动漫
  • 孝义网站开发公司长沙企业关键词优化哪家好