博文

求助(2006-12-25 22:40:00)

摘要:哪位朋友告诉我 sinx 和 cosx 的计算公式!!!!!! ......

阅读全文(1602) | 评论:0

汇编写的(交集,并集,差集)(2006-12-11 15:43:00)

摘要:最近忙这考试,英语六级很少写帖了,今天有兴趣就写了这个程序,希望大家给点评论,以便自己以后改进!!!       dseg segment
str1 db 'abcdefgklmn','$'
str2 db 'abcdhijk','$'
jiao db 20 dup (?)
bing db 30 dup (?)
cha  db 20 dup (?)
dseg ends
sseg segment stack
sseg ends
cseg segment
            assume cs:cseg,ds:dseg,ss:sseg
           
start:      
     mov ax,dseg
     mov ds,ax
     lea ax,str1
     push ax
     lea ax,str2
     push ax
     lea ax,jiao
     push ax
    
     call jiao_func
           
     lea ax,str1
 &nb......

阅读全文(2544) | 评论:1

对于网上日历算法的看法(2006-11-29 17:01:00)

摘要:我今天编写的是用汇编编写万年历,可是发现一个小问题 在网上搜到的1个算法: 1:—— 蔡勒(Zeller)公式 
历史上的某一天是星期几?未来的某一天是星期几?关于这个问题,有很多计算公式(两个通用计算公式和一些分段计算公式),其中最著名的是蔡勒(Zeller)公式。即w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1

公式中的符号含义如下,w:星期;c:世纪-1;y:年(两位数);m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1、2月要看作上一年的13、14月来计算,比如2003年1月1日要看作2002年的13月1日来计算);d:日;[ ]代表取整,即只要整数部分。(C是世纪数减一,y是年份后两位,M是月份,d是日数。1月和2月要按上一年的13月和 14月来算,这时C和y均按上一年取值。) 我经过演此算法只有1,11等几个月是正确的 例如:2006年5月1日为例: m=5,y=06,c=20(21世纪),d=1 w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1
w=6+1+5-40+15+1-1=3 而日历上5月1日为星期1 由此可见并不是很准确啊!!!!!!!!!!!!!!!!!!!         有错误的地方请大家给与指点和批评      ......

阅读全文(3379) | 评论:1

编写汇编程序真是麻烦(2006-11-29 13:46:00)

摘要:今天我编写日历程序(汇编),就是因为一个ah,写成了al,导致我查找错误很长时间真是很郁闷啊!......

阅读全文(2042) | 评论:0

汇编(2006-11-23 17:29:00)

摘要:从键盘读入一个字符串(<80),统计字母,数字及其他字符的个数     datasegment   segment array     db  80
          db  ?
          db  80 dup(?)
datacount      db  0
wordcount      db  0
othercount     db  0
out1      db  'datacount:','$'
out2      db  'wordcount:','$'
out3      db  'othercount:','$'
datasegment   ends codesegment   segment
 
       assume   ds:datasegment,cs:codesegment
 start:
       mov  ax,datasegment
       mov  ds,ax
       lea  dx,array
  &......

阅读全文(2113) | 评论:1

汇编程序设计(2006-11-23 17:27:00)

摘要:从键盘输入一个八位二进制数,显示其对应的无符号与带符号十进制   程序:  datasegment   segment array     db  8 dup(0)
ssign     db  'sign data','$'
uunsign   db  'unsign data','$'
datasegment   ends codesegment   segment
 
       assume   ds:datasegment,cs:codesegment
 start:
       mov  ax,datasegment
       mov  ds,ax
       mov  si,0
       mov  cx,8
 rep:  mov ah,1
       int 21h
       sub al,30h
       mov array[si],al
       inc si
       loop rep
       mov di,7
  &n......

阅读全文(2575) | 评论:0

汇编子程序设计(2006-11-16 21:39:00)

摘要:要求: 已知某密码由英文字母A、B、C……Z组成且以ASCII码形式存放在以CIPHER为首地址的存储区中,试统计各字母在此密码中出现的次数并依次存入以CHAR为首地址的26个字节中,最后将字母出现的次数以十六进制形式显示出来(设出现的次数≤255),显示格式为: A XXH B XXH Z XXH 要求: 将“8位二进制数转换成十六进制数并显示出来”的功能用子程序完成。 program:  jidseg     segment
chipher  db 'AASDFGHJKLMNBVCXZQWERTYUIOPJSDLFSDLFSDJFOFWOOEWJWTRETJGFVNLFLFJLWUIEWWFSFSFKF'
len      = $-chipher
char      db  26 dup(0)
dseg      ends
cseg     segment
         assume   cs:cseg ,ds:dseg
start:
          mov ax,dseg
   mov ds,ax
          mov si,0
next:   mov  bl,chipher[si]
          mov  bh,0
   inc si
   cmp si,len
   ja  c......

阅读全文(2366) | 评论:2

汇编子程序设计(2006-11-14 22:58:00)

摘要: 实验七 子程序设计(1) (一)实验目的 1、掌握子程序的设计方法和调用方式 2、深刻认识堆栈在子程序设计中所起的作用 3、掌握子程序调试的技巧。 (二)实验设备 同实验二 (三)实验内容和要求 实验内容: 内存中有一字节型无符号数缓冲区Data,长度为100。将Data缓冲区显示到屏幕上,分别用二进制,十进制和十六进制。要求: 1.编写子程序将一个字节数用二进制进行显示,参数用内存数传递; 2.编写子程序将一个字节数用十进制进行显示,参数用寄存器数传递; 3.编写子程序将一个字节数用十六进制进行显示,参数用堆栈传递; (四)预习要求 同实验二 (五)实验步骤 同实验二 (六)实验结果分析 1、理解3种参数传递方式各有什么特点 2、绘制一般子程序的结构。 (七)编程提示 (a) 二进制显示可采用移位并判断该位的方式进行。 (b) 十进制数采用除以10取商的方式。 (c) 十六进制数可利用二进制转换位十六进制的方法进行。 (d) 注意去掉最高位的“0”。
目前只做了1和2             DSEG    segment
data  db   101,1,2,3,4,5,6,7,8,9,90 dup(5)
msg   db   ',','$'
msg1  db   'please choose operation','$'
msg2  db   '0:bit-data;   1:dec-data;    2:hex-data','$'
addrtbl dw  bdata,ddata,hdata
dseg     ends   c......

阅读全文(2797) | 评论:1

杨辉三角(2006-11-13 13:19:00)

摘要:#include<iostream>
#include<iomanip>
using namespace std;
class queue
{
public:
 queue(){rear=front=0;}
 bool empty(){return rear==front;}
 bool get_yanghuisanjiao(int i);
   
private:
 int front;
 int rear;
 int data[20];
};
int main()
{
 queue q;
 int y;
 cout<<"please put in how many line in yanghuisanjiao"<<endl;
 cin>>y;
 q.get_yanghuisanjiao(y);
 return 0;
}
bool queue::get_yanghuisanjiao(int i)
{
 data[0]=1;data[1]=1;//先将第一,第二位置的元素输入;
 int h=i;
 for(int j=1;j<=i;j++)
 {
  for(int n=rear;n>=1;n--)
  {
   data[n]=data[n]+data[n-1];//实现元素的算法;
  }
  data[rear++]=1;
  cout<<setw(h--);
  for(int x=0;x<rear;x++)//输出元素;
   cout<<" "<<da......

阅读全文(2281) | 评论:0

合并链表(数据结构)(2006-11-13 13:18:00)

摘要:#include"link_list.h"
int main()

 int i;
 link_list L1;
 link_list L2;
 cout<<"now put in the data in the first list L1"<<endl;
 L1.get_data_in();
 cout<<"now put in the data in the second list L2"<<endl;
 L2.get_data_in();
 cout<<"if you want to printf the combination_increase list please put '1'" <<endl;
    cout<<"if you want to printf the combination_descending list please put '0'" <<endl;
 cin>>i;
 if(i==1)
 {
    L1.combination_increase(&L2);
 L1.get_data_out();
    cout<<"if you want to printf the combination_descending list please put '0'" <<endl;
 int j;cin>>j;
    if(j==0)
 {
  L1.combination_descending(&L2);
  L1.get_data_out();
 }
 }
 if(i==0)
&nbs......

阅读全文(2303) | 评论:0