組合語言程式設計計算S12223242N

2021-03-04 08:54:49 字數 4475 閱讀 1795

1樓:永恆

code  segment

assume    cs:code

***       100h

start:  push      cs

pop       ds

push      cs

pop       es

mov       si,1

mov       di,0

@1:mov       ax,si

mov       bx,si

mul       bl

cmp       ax,81

ja        @2

add       di,ax

inc       si

jmp       @1

@2:mov       ax,di

call      dispax

mov       ah,4ch

int       21h

; 將要顯示的無符號數置於 ax 中

dispax  proc      nearpush      ax

push      bx

push      cx

push      dx

push      si

push      di

push      bp

pushf

push      ds

push      cs

pop       ds

mov       byte ptr nz,0push      ax

lea       si,divarr

mov       cx,5

@@1:

pop       ax

mov       dx,0

mov       bx,[si]

div       bx

push      dx

cmp       al,0

jne       @@2

cmp       byte ptr nz,1je        @@2

cmp       cx,1

je        @@2

mov       dl,20h

jmp       @@3

@@2:

add       al,30h

mov       dl,al

mov       byte ptr nz,1@@3:

mov       ah,2

int       21h

inc       si

inc       si

loop      @@1

pop       dx

pop       ds

popf

pop       bp

pop       di

pop       si

pop       dx

pop       cx

pop       bx

pop       ax

retdivarr  dw        10000,1000,100,10,1

nz  db        0

dispax  endp

code  ends

end       start

1^2+2^2+3^2+4^2+....+n^2 的計算公式是什麼

2樓:你愛我媽呀

^s=(1/6)n(n+1)(2n+1)。

推導過程:

設s=1^2+2^2+....+n^2

(n+1)^3-n^3 = 3n^2+3n+1

n^3-(n-1)^3 = 3(n-1)^2+3(n-1)+1

...2^3-1^3 = 3*1^2+3*1+1

把上面n個式子相加得:(n+1)^3-1 = 3* [1^2+2^2+...+n^2] +3*[1+2+....+n] +n

所以s= (1/3)*[(n+1)^3-1-n-(1/2)*n(n+1)] = (1/6)n(n+1)(2n+1)

擴充套件資料:

數列求和方法

1、分組求和:把乙個數列分成幾個可以直接求和的數列。

2、拆項相消:有時把乙個數列的通項公式分成兩項差的形式,相加過程消去中間項,只剩有限項再求和。

3、錯位相減:適用於乙個等差數列和乙個等比數列對應項相乘構成的數列求和。

4、倒序相加:例如,等差數列前n項和公式的推導。

3樓:等待楓葉

^^1^2+2^2+3^2+4^2+....+n^2 的計算公式是n*(n+1)*(2n+1)/6。

解:1、因為當n=1時,1^2=1=1*(1+1)*(2x1+1)/6=1,

2、當n=2時,1^2+2^2=5=2*(2+1)*(2x2+1)/6=5,

3、設n=k(k≥2,k為正數)時,1^2+2^2+3^2+...+k^2=k*(k+1)*(2k+1)/6成立。

那麼當n=k+1時,

1^2+2^2+3^2+...+k^2+(k+1)^2=k*(k+1)*(2k+1)/6+(k+1)^2,

而k*(k+1)*(2k+1)/6+(k+1)^2

=(k+1)*(k*(2k+1)/6+(k+1))

=(k+1)*(k*(2k+1)+6(k+1))/6

=1/6*(k+1)*(2k^2+7k+6)

=1/6*(k+1)*(2k+3)*(k+2)

=(k+1)*((k+1)+1)*(2(k+1)+1)/6,

即1^2+2^2+3^2+...+k^2+(k+1)^2=(k+1)*((k+1)+1)*(2(k+1)+1)/6也滿是公式。

所以根據數學歸納法,對一切自然數n有1^2+2^2+3^2+4^2+....+n^2 的計算公式是n*(n+1)*(2n+1)/6。

4樓:趙芷曼

^^設s=1^2+2^2+....+n^2(n+1)^3-n^3 = 3n^2+3n+1n^3-(n-1)^3 = 3(n-1)^2+3(n-1)+1...

.. ...

2^3-1^3 = 3*1^2+3*1+1把上面n個式子相加得:(n+1)^3-1 = 3* [1^2+2^2+...+n^2] +3*[1+2+....+n] +n

所以s= (1/3)*[(n+1)^3-1-n-(1/2)*n(n+1)] = (1/6)n(n+1)(2n+1)

5樓:匿名使用者

^^設s=1^2+2^2+....+n^2 (n+1)^3-n^3 = 3n^2+3n+1 n^3-(n-1)^3 = 3(n-1)^2+3(n-1)+1 ... ..

... 2^3-1^3 = 3*1^2+3*1+1 把上面n個式子相加得:(n+1)^3-1 = 3* [1^2+2^2+...

+n^2] +3*[1+2

6樓:韓罕憨漢

原式=n(n+1)/2•(n+n+1)/3

=n(n+)(2n+1)/6

7樓:東東西西580怕

想像乙個有圓圈構成的正三角形,

第一行1個圈,圈內的數字為1

第二行2個圈,圈內的數字都為2,

以此類推

第n行n個圈,圈內的數字都為n,

我們要求的平方和,就轉化為了求這個三角形所有圈內數字的和。設這個數為r

下面將這個三角形順時針旋轉60度,得到第二個三角形再將第二個三角形順時針旋轉60度,得到第三個三角形然後,將這三個三角形對應的圓圈內的數字相加,我們神奇的發現所有圈內的數字都變成了2n+1而總共有幾個圈呢,這是乙個簡單的等差數列求和1+2+……+n=n(n+1)/2

於是3r=[n(n+1)/2]*(2n+1)r=n(n+1)(2n+1)/6

用vb語言求滿足 1^2+2^2+3^2+4^2+…+n^2<1000最大的n值,寫出**

8樓:匿名使用者

private sub form_click()s = 0

i = 1

do while s < 1000

s = i * 2 + s

i = i + 1

loop

print i - 2

end sub

9樓:

sum=0

i=0while sum <1000

i=i+1

sum=sum+i*i

wend

msgbox "最大n值為 " & i

10樓:

dim i as integer

dim s as integer

i = 1

dos = s + i * i

i = i + 1

loop until s > 1000

msgbox i - 1

答案是14 望採納

組合語言程式設計,組合語言程式設計?

嚴格要求輸入 0 7。輸出為分別是 0 2 4 6 8 a c e。下列程式,可滿足題目要求。assume cs cccc segment i y db 02468ace s t mov ax,cc mov ds,axi x mov ah,07h int 21h cmp al,0 jb i x cm...

組合語言程式設計,組合語言程式設計步驟 有那幾步

1.c,e 這個題出要考查幾條算術和邏輯指令,仔細一點就可以了。2 a,d b錯在數字大過了乙個位元組 c錯在用數字來標識標號了 e錯在用?號定義dup的次數 3 b,e 同一 c,d不影響al的值 4 a c d e 5 a b 1 將dl中小寫字母轉換為大寫,可用c e指令。a add dl,2...

用組合語言程式設計,用組合語言編寫乙個簡單程式

寫一下簡單的演算法吧,先提供乙個簡單的畫點子程式 在螢幕顯示一點或一畫素子程式 輸入引數 bx 行位址 0 479 si 列位址 0 639 dl 顏色 0 15 640 480顯示模式 dot proc near push cx 儲存顏色 push dx mov ax,80 行位址 mul bx ...