友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
合租小说网 返回本书目录 加入书签 我的书架 我的书签 TXT全本下载 『收藏到我的浏览器』

windows环境下32位汇编语言程序设计-第68部分

快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!



_WalkTree           proc        _hFile;_lpWC;_lpsz

                        local   @dwTemp

                        local   @szWord'52':byte

 

                        pushad

                        mov     esi;_lpWC

                        assume  esi:ptr WORD_COUNT

                        。if     'esi'。dwDepth && 'esi'。dwCount

;********************************************************************

; 计算百分比并写入log文件

;********************************************************************

                        mov     eax;'esi'。dwCount

                        mov     ecx;1000

                        mul     ecx

                        mov     ecx;dwCount

                        。if     ecx

                                div     ecx

                        。else

                                mov     eax;0

                        。endif

                        invoke  wsprintf;addr szBuffer;

                                addr szFmtWord;'esi'。dwCount;eax;_lpsz

                        invoke  lstrlen;addr szBuffer

                        mov     ecx;eax

                        invoke  WriteFile;_hFile;addr szBuffer;

                                ecx;addr @dwTemp;NULL

                。endif

;********************************************************************

; 如果有下层结点则递归调用

;********************************************************************

                mov     @dwTemp;0

                。while  @dwTemp 《 26

                        mov     ebx;@dwTemp

                    mov     ebx;dword ptr 'esi+ebx*4'

                    。if     ebx

                            invoke  lstrcpy;addr @szWord;_lpsz

                            invoke  lstrlen;addr @szWord

                            lea     ecx;@szWord

                            add     ecx;eax

                            mov     eax;@dwTemp

                            add     al;'a'

                            mov     word ptr 'ecx';ax

                            invoke  _WalkTree;_hFile;ebx;addr @szWord

                    。endif

                    inc     @dwTemp

                    。endw

;********************************************************************

; 释放结点

;********************************************************************

                    。if     'esi'。dwDepth

                            invoke  GlobalFree;esi

                    。endif

                    popad

                    assume  esi:ptr WORD_COUNT

                    ret

 

_WalkTree       endp

;》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

; 如果输入的是字母则建立或移动到下一结点,输入0则增加结点计数

;》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

_CountLetter    proc        _dwLetter

                    local   @dwIndex

 

                    assume  edi:ptr WORD_COUNT

                    or      al;20h                      ;转换成小写字母

                    。if     (al 》= 'a') && (al 
返回目录 上一页 回到顶部 0 0
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!