汇编网首页登录博客注册
jcw2008的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
文章收藏

[2008-11-18 21:38] TC与MASM混合编程初试

点击查看原图
/* abc2.c */

/* 编译方法:*/
/* masm myprintf */
/* tcc -ms -c abc2 */
/* tlink -Llib c0s abc2 myprintf,abc2,,cs */
/* 以上是参考了《80x86汇编语言程序设计》一书的第八章《模块化程序设计技术》 */

extern        void my_printf(char *, ...);

main()
{
        unsigned a=65535;
        int        b=-32768, c=32767;
        
        my_printf("string: %s\n"
                "char: ...
阅读全文 | 评论次数(4) | 浏览次数(853) | 所属类型(汇编作业)

[2008-11-16 21:48] 《汇编语言》第二版的综合实验5 自定义的printf函数的编程实现

点击查看原图
;abc.asm

;        my_printf("Can you see me?\n\r\rI am here!\rMy printf!\r\n\n\r\n\rEnjoy it!!!");
;        pause();
;        my_printf("%c%c%c, \n\r\nDate: %d.%d.%d", 'O', 'K', '!', 2008, 11, 16);

;刚开始我是想实现用c的main主函数来调用汇编写的函数my_printf,
;可是花了一个下午也没成功
;只好先这样吧,其实本来就应该先用汇编写代码调用一下my_printf以检查有无问题的。
;不检查不知道,果然发现了好...
阅读全文 | 评论次数(2) | 浏览次数(1027) | 所属类型(汇编作业)

[2008-10-22 20:33] 《汇编语言》的课程设计2 v0.1 作业提交

点击查看原图
;proj02.asm

;写了一天,完成了两个函数,终于把功能都添加上了,新添的动态显示时钟和引导硬盘上的操作系统两个分支经运行调试,是没有问题的,设置时钟的功能我就不知道了,因为我机子上主板上的电池没有电了,连着虚拟机的时间也不能设置,有兴趣的人可以替我试一下那个功能。

;08.10.26日修改日志:
;改了两处地方,在set_clock处有两个大bug:
;一处是get_num下的指令里少了一句xor  ah, ah
;另一处是没有考虑字符串的一种情况,即以数字结尾的情况。
;
;别外,偶错了,虚拟机即使主板没电,也是可以设置时间的,不能设是因为有以上两个大bug在,...
阅读全文 | 评论次数(3) | 浏览次数(1279) | 所属类型(汇编作业)

[2008-10-21 20:51] 推荐博文 《汇编语言》的课程设计2(未完成)之 初步   框架与界面

点击查看原图
;proj02.asm
;马马虎虎把课程设计2的界面与框架写了出来,用VFloppy与Virtual PC调试了一下,基本的结构没有错,就剩引导原有操作系统、动态显示时钟和设置时钟的功能了。
;不过有个不好的情况,我用UltraEdit查看了一下引导扇区,发现只剩下191个字节了,有可能要多将装载一个扇区了,还好不用实现文件系统。

;课程设计二:
;一个可以自行启动计算机,不需要在现有操作系统环境中运行的程序。
;程序的功能如下:
;1. 列出功能选项,让用户通过键盘进行选择,界面如下:
;        1) Reset PC
;        2) Start System
;        3) Clock...
阅读全文 | 评论次数(4) | 浏览次数(1336) | 所属类型(汇编作业)

[2008-10-21 10:27] 《汇编语言》第十六章的实验16 编写包含多个子程序的中断例程

;exp16a.asm
;这个程序一错再错,累死我了。不过最后的最后终于调试通过了。
;讲一下org伪操作符的使用,这个指令是使编译器将下面的指令和数据的段内偏移地址设为从你指定的地址开始编译其地址。

;P正文289
;安装一个新的int 7ch中断例程,为显示输出提供如下功能子程序:
;1. 清屏                        ah= 0
;2. 设置前景色                ah= 1, al= color
;3. 设置背景色                ah= 2, al= color
;4. 向上滚动一行                ah= 3

assume        cs: code

code        segment
install:
        mov        ax, cs...
阅读全文 | 评论次数(1) | 浏览次数(803) | 所属类型(汇编作业)

[2008-10-20 21:52] 《汇编语言》第十七章的第三节:输入字符串 编程实现    作业提交

;p1703.asm

assume        cs: code

data        segment
buf        db        128 dup (0)
data        ends

stack        segment
        db        64 dup (0)
stack        ends

code        segment
start:
        mov        ax, data
        mov        ds, ax
        
        mov        ax, stack
        mov        ss, ax
        mov        sp, 64
        
        mov        di, offset buf
        mov        dx, 0c20h
        call        input_str
        
        inc        dh
        mov        cl, 2 ...
阅读全文 | 评论次数(1) | 浏览次数(605) | 所属类型(汇编作业)

[2008-10-19 18:50] 《汇编语言》第十三章的实验13的第一个题目:7ch号中断的中断例程的编写与安装

;exp13-1a.asm
;7ch号自定义的中断例程(显示一个用0结束的字符串)的安装部分
;调用部分较简单,就不张贴了。

assume        cs: code


code        segment
install:
        mov        ax, cs
        mov        ds, ax
        mov        si, offset handle_7ch

        mov        ax, 0
        mov        es, ax
        mov        di, 200h

        cld
        mov        cx, offset handle_7ch_end- offset handle_7ch
        rep        movsb

        mov        word ptr es:[...
阅读全文 | 评论次数(1) | 浏览次数(521) | 所属类型(汇编作业)

[2008-10-18 00:06] 《汇编语言》的课程设计1 书P200 作业提交

点击查看原图
;proj01.asm


;table段中结构数组中该结构的各字段:
;00h: char year[4]
;05h: dword sum-of-money
;0ah: word number-of-employees
;0dh: word average-income
;the others: space



assume        cs: code, ds: data, es: table, ss: stack

data        segment
        db        '1975', '1976', '1977', '1978', '1979', '1980', '1981', '198...
阅读全文 | 评论次数(1) | 浏览次数(534) | 所属类型(汇编作业)

[2008-10-17 21:48] 《汇编语言》第十章的实验10中的第三个题目:转换数字为字符并输出 作业提交

点击查看原图
;exp10-3.asm
;在WinXP的命令提示符下运行时(我刚经历过),先运行一下debug退出,否则可能出现不了显示的结果。

assume        cs: code, ds: data

data        segment
        dw        123, 12666, 1, 8, 3, 38
        db        10 dup (0)
data        ends

stack        segment
        db        64 dup (0)
stack        ends

code        segment
start:
        mov        ax, stack
        mov        ss, ax
        mov        sp, 64

        mov        ax, data
        mo...
阅读全文 | 评论次数(0) | 浏览次数(454) | 所属类型(汇编作业)

[2008-10-17 16:15] 《汇编语言》第十章的实验10中的第一个题目:显示字符串 作业提交

;exp10-1.asm
;在屏幕的8行3列,用绿色显示data段中的字符串。
;可先用dos指令cls清屏后再运行本程序

assume        cs: code, ds: data

data        segment
        db        'Welcome to masm!', 0
data        ends

stack        segment
        db        64 dup (0)
stack        ends

code        segment
start:
        mov        ax, stack
        mov        ss, ax
        mov        sp, 64

        mov        dh, 8
        mov        dl, 3
        mov        cl, 2                ;黑底...
阅读全文 | 评论次数(0) | 浏览次数(470) | 所属类型(汇编作业)
页码数(2):  1  2