Академический Документы
Профессиональный Документы
Культура Документы
LD R1, Vx_IN
LD R2, CERO
ADD R5, R3, #0 ;t
axt_2
; R6 = t^2
LD R0, ax
ADD R0,R0,#0
BRz ax_z
ADD R5, R5, R0 ; R5 ya estaba en 0
ADD R6, R6, #-1
BRp axt_2
LD R6, CERO
Div_2
ax_z
ADD
ADD
NOT
ADD
ADD
BRp
R5, R5,
R6, R6,
R0, R6
R0, R0,
R0, R0,
Div_2
#-1
#1; Comienza en 0
#1
R5
;R5 = axt^2 / 2
BRnzp ax_nz
ADD R0,R0,x0
ST R0, ax
LD R5, CERO ; Caso cuando ax = 0
ax_nz
LD R1, Vx_IN
LD R0, CERO
ADD R6, R3, R0
Vxt
; R5 = axt^2
ST R6, X_OUT
RET
;--------------CLCULO DE POSICIN EN Y---------------------;Y = Y + Vy*t + (1/2)*ay*t^2
POS_Y
LD R5, t_2
LD R6, CERO
Div__2 ADD
ADD
NOT
ADD
ADD
BRp
R5, R5,
R6, R6,
R0, R6
R0, R0,
R0, R0,
Div__2
#-1
#1; Comienza en 0
#1
R5
;R5 = t^2 / 2
ST R5, T_PRUEBA
LD R0, ay
LD R6, CERO
ayt_2_2 ADD R6, R5, R6
ADD R0, R0, #1
BRn ayt_2_2
;R6 = ayt^2 / 2
LD R1, Vy_IN
LD R0, CERO
ADD R5, R3, #0
Vyt
R0 = Vyt
YY
.BLKW 31
T_PRUEBA .BLKW 1
;-------------------------POCICIN X---------------------------POS_X
LD R1, X
LD R2, Vx
LD R4, ax
ST R7, SAVE_R7
JSR POSICION ;********************************************************
ST R1, X
LD R7, SAVE_R7
RET
;---------------------------------------------------------------
.END
LD R3, CERO; contador 't = 0', R3 CORRESPONTE A 't', DURANTE TODO EL PRO
LD R4, TOP_TIME ; Tiempo lmite
LEA R5, YY
ADD R5, R5, R3
LD R0, Y
STR R0, R5, 0
ADD R5, R4, R3
BRn FOR
HALT
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;----------------VELOCIDAD EN X--------------------------------VEL_X
LD R1, Vx
LD R2, ax
ADD R4, R3, #0
ST R7, SAVE_R7
JSR VELOCIDAD
ST R1, Vx
ST R2, ax
LD R7, SAVE_R7
RET
;Vx
;ax
;t
;CLCULO DE V = Vo + at ;
;almacena la velocidad calculada
;almacena la aceleracin total en x
;--------------------------------------------------------------;----------------VELOCIDAD EN Y--------------------------------VEL_Y
LD R1, Vy
LD R2, ay
ADD R4, R3, #0
ST R7, SAVE_R7
JSR VELOCIDAD
ST R1, Vy
ST R2, ay
LD R7, SAVE_R7
RET
;Vy
;ay
;t
;CLCULO DE V = Vo + at ;
;almacena la velocidad calculada
;almacena la aceleracin total en y
;--------------------------------------------------------------;-------------------------POCICIN X---------------------------POS_X
LD R1, X
LD R2, Vx
LD R4, ax
ST R7, SAVE_R7
JSR POSICION ;
ST R1, X
LD R7, SAVE_R7
RET
;--------------------------------------------------------------;-------------------------POCICIN Y---------------------------POS_Y
LD R1, Y
LD R2, Vy
LD R4, ay
ST R7, SAVE_R7
JSR POSICION ;
ST R1, Y
LD R7, SAVE_R7
RET
;--------------------------------------------------------------;-------------------------COLISIN-----------------------------;--------------------------------------------------------------;=======================VELOCIDAD===============================
;V = Vo + at, Donde Vo = R1, a = R2, t = R3
VELOCIDAD
;
ST R7, SAVE_R7_2
;
JSR VISCOSIDAD
on viscosidad
;
ADD R2, R2, R0
;V = Vo + at
LD R7, SAVE_R7_2
RET
;===============================================================
;<<<<<<<<<<<<<<<<<<<<<<ACELERACIN CON VISCOSIDAD>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; a = (p*(V^2)*Cd*A) /
aceleracin queda: a =
; k= 0.02 = 1/50 , por
nivel y pjaro.
; R1: Velocidad , R4 =
;VISCOSIDAD
;
LD R4, K
;Inicialmente negativa
;
LD R5,CERO
;
ADD R5, R1, #0
;
BRp POS
; Si la V es positiva, la a ser negativa (-k*V^2) OJO CON EL
!!!!!
;NEGACION NOT R5,R1
;
ADD R5, R5, #1
;
NOT R4, R4
; Si la V es negativa, a ser positiva (k*V^2)
;
ADD R4, R4, #1
;POS
LD R6, CERO
;
;
LD R0, CERO
ADD R0, R5, #0
;R0 = V = R5
;LOOP_V2
ADD R6,R6,R5
;
ADD R0, R0, #-1
;
BRp LOOP_V2
;
; R6 = V^2
LD R0, CERO
RET
; R0 = kV_2 = a:drag
;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
;==============================POSICIN=================================
; X = Xo + Vt + (1/2)at^2
; R1 = X, R2 = V, R4 = a
POSICION
ADD R5, R3, #0 ;t
LD R6, CERO
LOOP_t2 ADD R6,R6,R3
ADD R5, R5, #-1
BRp LOOP_t2
; R6 = t^2
ADD R4,R4,#0
BRz a_z
at_2
; verificando signo de a
Div_2
ADD
ADD
NOT
ADD
ADD
BRp
R5, R5,
R6, R6,
R0, R6
R0, R0,
R0, R0,
Div_2
#-1
#1; Comienza en 0
#1
R5
;R5 = at^2 / 2
BRnzp a_nz
a_z
a_nz
LD R0, CERO
ADD R6, R3, R0
Vt
; R5 = at^2