part_res <= 0 ; y_bo <= 0 ; state<= IDLE; end el se begin 48 case ( state) IDLE: i f ( s t a r t_i ) begin state<= WORK; a <= a_bi ; b <= b_bi ;
87
c t r <= 0 ; part_res <= 0 ; end WORK: begin i f ( end_step ) begin state<= IDLE; y_bo <= part_res ; end part_res <= part_res + shifted_part_sum ; c t r <= c t r + 1 ; end endcase end endmodule 6.2.4. Kvadrat ildizni olish algoritmi. Ushbu bo‘limda eng yaqin butun songa yaxlitlovchi butun kvadrat ildiz olish
algoritmi keltirilgan.
𝑦 = √𝑥
Eng yaqin pastki songa yaxlitlash shuni anglatadiki, agar biz kvadrat ildizi
butun son bo‘lmagan sonning kvadrat ildizini chiqarsak, natijada eng kichik butun
qism olinadi. Masalan, 10 ning kvadrat ildizini olib, 3.16 sonini olinadi va natija 3
sonigacha yaxlitlanadi.
√10 = 3.16 = 3
Faqat qo‘shish, ayirish, taqqoslash va siljitish amallaridan foydalangan holda
kvadrat ildizni hisoblash algoritmining diagrammasi 6.10-rasmda keltirilgan.
Algoritm diagrammasida
N belgisi, kiritilgan
x operandning xonaligini bildiradi.
88
6.10. Kvadrat ildizni hisoblash algoritmi diagrammasi.
6.2.5. Kub ildizini hisoblash olish algoritmi Ushbu bo‘limda eng yaqin pastki butun songa yaxlitlangan butun son kub
ildizini olish algoritmi keltirilgan.
𝑦 = √𝑥
3
Faqat ko‘paytirish, qo‘shish, ayirish, taqqoslash va siljitish amallaridan
foydalangan holda kub ildizini hisoblash algoritmining diagrammasi 6.11-rasmda
ko‘rsatilgan. Algoritm diagrammasidagi
N kiritilgan
x operandining xonaligini
bildiradi.
Boshlash
Tugash
89
6.11.Rasm Kub ildizini hisoblash algoritmining diagrammasi.