鱼C论坛

 找回密码
 立即注册
查看: 2360|回复: 6

计算

[复制链接]
发表于 2012-5-26 21:30:37 | 显示全部楼层 |阅读模式
3鱼币
编写程序,计算表达式(a+b)/(c and d) +2,a,b,c,d均在数据段中定义好,分别是-5,14,7,11,结果存入变量RESULT中,再把结果用十进制数显示出来

最佳答案

查看完整内容

assume cs:code,ds:data,ss:stack data segment a dw -5 b dw 14 c dw 7 d dw 11 result dw ? data ends stack segment dw 16 dup (0) stack ends code segment start: mov ax,data mov ds,ax mov ax,stack mov ss,ax mov sp,20h mov ax,ds:a mov bx,ds:b add ax, ...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-5-26 21:30:38 | 显示全部楼层
assume cs:code,ds:data,ss:stack

data segment
    a       dw  -5
    b       dw  14
    c       dw  7
    d       dw  11
    result  dw  ?   
data ends


stack segment
    dw  16  dup (0)
stack ends

code segment

start:  mov ax,data
        mov ds,ax
        mov ax,stack
        mov ss,ax
        mov sp,20h
        
        mov ax,ds:a
        mov bx,ds:b
        add ax,bx        ;求和
        
        mov cx,ds:c
        mov dx,ds:d
        and cx,dx        ;求与运算
        
        mov dx,0
        div cx           ;除法
        
        add ax,2
        mov ds:result,ax
        mov cx,0          ;累加
        
    s1: mov dx,0
        mov bx,10
        div bx
        or dx,2c30h       ;2c为高位,字体颜色;30h将数值转换为ASCII码
        push dx   
        inc cx
        cmp ax,0
        jne s1            ;获得10进制序列
        
        mov ax,0b800h
        mov es,ax
        mov si,0
    s2: pop es:[si]
        add si,2
        loop s2
        
        mov ax,4c00h
        int 21h
            
code ends
    end start
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-5-26 23:39:46 | 显示全部楼层
assume cs:code,ds:data,ss:stack

data segment
    a       dw  -5
    b       dw  14
    c       dw  7
    d       dw  11
    result  dw  ?   
data ends


stack segment
    dw  16  dup (0)
stack ends

code segment

start:  mov ax,data
        mov ds,ax
        mov ax,stack
        mov ss,ax
        mov sp,20h
        
        mov ax,ds:a
        mov bx,ds:b
        add ax,bx        ;求和
        
        mov cx,ds:c
        mov dx,ds:d
        and cx,dx        ;求与运算
        
        mov dx,0
        div cx           ;除法
        
        add ax,2
        mov ds:result,ax
        mov cx,0          ;累加
        
    s1: mov dx,0
        mov bx,10
        div bx
        or dx,2c30h       ;2c为高位,字体颜色;30h将数值转换为ASCII码
        push dx   
        inc cx
        cmp ax,0
        jne s1            ;获得10进制序列
        
        mov ax,0b800h
        mov es,ax
        mov si,0
    s2: pop es:[si]
        add si,2
        loop s2
        
        mov ax,4c00h
        int 21h
            
code ends
    end start
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-5-27 00:29:42 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-5-27 16:35:43 | 显示全部楼层
sr5220 发表于 2012-5-27 00:29
为什么我编译的时候 c就不行 改成cc才编译成功。
怎么运行了 没有显示输出结果?

我编译的时候用的是emu8086软件,没有报错,刚才用masm6.11试了下,c是不行,改CC可以成功,结果显示在左上角
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-5-27 16:38:04 | 显示全部楼层
编译后运行结果,截图保存到res.rar中了,可以自己看下,呵呵

res.rar

34.47 KB, 下载次数: 4

编译后运行结果

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-5-27 22:17:05 | 显示全部楼层
fujian810 发表于 2012-5-27 16:38
编译后运行结果,截图保存到res.rar中了,可以自己看下,呵呵

太感谢啦!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-20 06:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表