major_lyu 发表于 2020-2-19 03:45:15

课程设计1

本帖最后由 major_lyu 于 2020-2-19 03:57 编辑

**** Hidden Message *****

LinuxDeepin 发表于 2020-2-19 23:12:31

代码看过了,显示效果正常。
如果能再优化一下,去掉中转table的存储空间
直接输出显示,代码会更加简洁

年份输出单独一个函数显示
总收入、职员人数、人均收入应该可以共用一个函数
在调用之前设置好参数,然后在调用

你可以参考一下我的帖子,代码注释很详细的

major_lyu 发表于 2020-2-20 12:34:39

LinuxDeepin 发表于 2020-2-19 23:12
代码看过了,显示效果正常。
如果能再优化一下,去掉中转table的存储空间
直接输出显示,代码会更加简洁
...

嗯,我也注意到了。谢谢您的建议。目前的最初级的代码,想法是直接利用前面几个实验写好的代码,并使主函数尽量简洁。有时间会按照您的建议进行优化。

爱思考的羊 发表于 2020-2-25 11:25:42

感谢分享

zyhfhyh 发表于 2020-3-5 02:18:20

{:5_101:}{:5_101:}{:5_110:}

项羽姓秦 发表于 2020-3-7 22:28:21

kk

barry5 发表于 2020-3-10 09:41:01

1

barry5 发表于 2020-3-10 10:07:01

;dtoc代码段
;      功能:将双字(32位)数字转换成对应的字符串存放到制定的内存地址
;      输入参数:ax------数据的低16位
;               dx------数据的高16位
;               ds------存储字符串的数据段地址
;               si------存储字符串第一个字符的偏移地址
dtoc: push si   ;
      push ax
      push bx
      push cx
      push dx ;寄存器压栈,保护上下文数据
      
      mov bx, 0 ; bx记录字符串长度
s1: mov cx, 10d
      
      call divdw   ;ax/10, ax:商的低16位,dx:商的高16位 cx: 余数
      
      add cx, 30h;计算余数ASCII码
      push cx      ;将余数ASCII码压栈
      inc bx       ;数据位数加1
      
      mov cx, ax   ;判断商的低16位是否为0   
      jcxz s2      ;如果商低16位为0,跳转,判断商的高16位是否为0
      jmp short s1
      
s2: mov cx, dx;判断商的高16位是否为0
      jcxz s3   ;如果商高16位也为0,跳转,存放最后一位余数
      jmp short s1

s3: mov cx, bx   ;将字符串长度作为循环次数赋给CX
s4: pop ax       ;从栈顶弹出
      mov ds:,al ;取字符ASCII码所在的低字节,放到数据段偏移地址si处
      inc si         ;si指向下一个字节
      loop s4      ;循环,取出下一个字符,知道取出所有字符,cx=0
      
      mov al, 0      ;在字符串末尾加上0,表示字符串结束
      mov ds:, al
      
okdtoc:pop dx ;恢复上下文寄存器
       pop cx
       pop bx
       pop ax
       pop si
       ret


想问下这一段的S4这个为啥pop的是ax,ascll码不是保存在cx吗,不是应该pop cx吗

Tsncssyh 发表于 2020-3-11 17:57:09

1

wjb8love_9c7c9c 发表于 2020-3-13 20:53:52


正在学这个 收藏一下

f278457546 发表于 2020-3-16 21:43:20


帮助本版积分规则参与/回复主题       

yi-ya_ao 发表于 2020-3-20 22:11:49

学习

赵晓雨 发表于 2020-3-24 21:03:06

666

mmy555 发表于 2020-3-31 18:44:27

1

bb925875491 发表于 2020-3-31 21:06:57

学习一下

TonyJia0156 发表于 2020-4-1 14:58:10

正在学习中……

cpj0036 发表于 2020-4-2 02:59:35

鱼c万岁

hahahahe 发表于 2020-4-29 14:13:41

学习

nemo666 发表于 2020-5-16 21:49:58

看看

andyliu9003 发表于 2020-5-23 15:13:29

学习一下
页: [1] 2 3 4 5 6
查看完整版本: 课程设计1