我想模拟正玄曲线,为什么周围会产生很多多余的线?

来源:百度知道 编辑:UC知道 时间:2024/09/22 12:30:03
;●在edit中把数据写得这么长,在笔记本里被排成三行汇编也没出错!
DATA SEGMENT
hang1 Dw

290,280,270,260,250,240,230,220,210,200,190,180,170,160,150,145,140,135,135,135,140,145,150,160,170,180,190,200,210,220,230,2

40,250,260,270,280,290
lie1 Dw

20,21,22,23,24,26,28,30,32,36,40,44,48,52,60,68,76,84,92,102,112,120,128,136,142,150,154,158,162,166,170,172,174,176,178,180,

181,182,183,184
hang2 dw

300,310,320,330,340,350,360,370,380,390,400,410,420,430,440,445,450,455,455,455,450,445,440,430,420,410,400,390,380,370,360,3

50,340,330,320,310,300
lie2 dw

184,185,186,187,188,190,192,194,196,200,204,208,212,216,224,232,240,248,256,266,276,284,292,300,308,316,320,324,328,332,336,3

42,344,346,348,350,352,353,354,355,356,357
cunt equ $ - hang1
X dw 2;这三个换成DB会发出三个错误警告,并导致没画出线。
;首次成功用此方式画出一些线。
CLR DB 2
DATA ENDS
STACK1 SEGMENT PARA S

想模拟正弦曲线,可用浮点指令;不的话,画两个半圆,也无需这么多数据。
周围会产生多余的线,是因为楼主在调度7个常用寄存器时,出现混乱。
下面是修改后,能正常出结果的程序:
;模拟正弦曲线
DATA SEGMENT
lie1 Dw 20,21,22,23,24,26,28,30,32,36,40,44,48,52,60,68,76,84,92,102
dw 112,120,128,136,142,150,154,158,162,166,170,172,174,176,178,180,181,182,183,184
lie2 dw 184,185,186,187,188,190,192,194,196,200,204,208,212,216,224,232,240,248,256,266
dw 276,284,292,300,308,316,320,324,328,332,336,342,344,346,348,350,352,353,354,355,356,357
hang1 Dw 290,280,270,260,250,240,230,220,210,200,190,180,170,160,150,145,140,135
dw 135,135,140,145,150,160,170,180,190,200,210,220,230,240,250,260,270,280,290
hang2 dw 300,310,320,330,340,350,360,370,380,390,400,410,420,430,440,445,450,455
dw 455,455,450,445,440,430,420,410,400,390,380,370,360,350,340,330,320,310,300
cunt equ ($-hang1)/2
CLR DB 2
DATA ENDS
STACK1 SEGMENT PARA STACK
DW 120H DUP(0)
STACK1 ENDS
code SEGM