⑴ 計算java源代碼
public class Q1{
public static void main(String args[]){
int a=5;
int b=6;
int m=a*b;
System.out.println(m);
}
}
需要main 方法的
⑵ 如何查看電腦上某程序的源代碼 如計算器
可以通過GitHub源代碼ping在計算機中檢查計算器的源代碼。具體操作方式如下:
1、進入GitHub的Microsoft個人問題主頁,如下圖所示。
(2)源碼計算擴展閱讀:
GitHub的Windows應用
GitHub 使用 git 分布式版本控制系統,而 git 最初是 LinusTorvalds 為幫助Linux開發而創造的,它針對的是 Linux 平台,因此 git 和 Windows 從來不是最好的朋友,因為它一點也不像Windows。
GitHub 發布了GitHub for Windows,為 Windows 平台開發者提供了一個易於使用的 Git 圖形客戶端。
GitHub forWindows是一個 Metro 風格應用程序,集成了自包含版本的 Git,bash 命令行 shell,PowerShell 的 posh-git 擴展。
GitHub 為 Windows 用戶提供了一個基本的圖形前端去處理大部分常用版本控制任務,可以創建版本庫,向本地版本庫遞交補丁,在本地和遠程版本庫之間同步。微軟也通過CodePlex向開發者提供 git 版本控制系統,而 GitHub 創造了一個更具有吸引力的 Windows 版本。
⑶ 求匯編源代碼 實現四則運算的計算器
#include <stdio.h>
//函數,讀數操作數
int getNextNum()
{
int ret;
scanf("%d",&ret);
return ret;
}
//函數,讀運算符
char getOpt()
{
return getchar();
}
//函數,計算
int caculate(int op1 , int op2 ,char opt)
{
if(opt=='+')return op1+op2;
if(opt=='-')return op1-op2;
if(opt=='*')return op1*op2;
if(opt=='/')return op1/op2;
return 0;
}
int main()
{
int op1,op2;
char opt;
//計算結果放在第一個操作數
op1 = getNextNum();
while(1)
{
opt = getOpt();
if ( opt == '=' ) break;
op2 = getNextNum();
op1 = caculate(op1,op2,opt);
}
printf("%d\n",op1);
}
return 0;
}
帶優先的四則運算計算器源代碼
#include<stdio.h>
#include<ctype.h>
#include<stdlib.h>
char token[61]; /*存放表達式字元串的數組*/
int n=0;
void error(void) /*報告錯誤函數*/
{
printf("ERROR!\n");
exit(1);
}
void match(char expected) /*檢查字元匹配的函數*/
{
if(token[n]==expected)
token[++n]=getchar();
else error();
}
double term(void); /*計算乘除的函數*/
double factor(void); /*處理括弧和數字的函數*/
double exp(void) /*計算加減的函數*/
{
double temp=term();
while((token[n]=='+')||(token[n]=='-'))
switch(token[n])
{
case'+':match('+');
temp+=term();
break;
case'-':match('-');
temp-=term();
break;
}
return temp;
}
double term(void)
{
double div;
double temp=factor();
while((token[n]=='*')||(token[n]=='/'))
switch(token[n])
{
case'*':match('*');
temp*=factor();
break;
case'/':match('/');
div=factor();
if(div==0) /*處理除數為零的情況*/
{
printf("The divisor is zero!\n");
exit(1);
}
temp/=div;
break;
}
return temp;
}
double factor(void)
{
double temp;
char number[61];
int i=0;
if(token[n]=='(')
{
match('(');
temp=exp();
match(')');
}
else if(isdigit(token[n])||token[n]=='.')
{
while(isdigit(token[n])||token[n]=='.') /*將字元串轉換為浮點數*/
{
number[i++]=token[n++];
token[n]=getchar();
}
number[i]='\0';
temp=atof(number);
}
else error();
return temp;
}
main()
{
double result;
FILE *data=fopen("61590_4.dat","at");
if(data==NULL)
data=fopen("61590_4.dat","wt");
if(data==NULL)
return 0;
token[n]=getchar();
result=exp();
if(token[n]=='\n')
{
token[n]='\0';
printf("%s=%g\n",token,result);
fprintf(data,"%s=%g\n",token,result);
}
else error();
fclose(data);
return 0;
getch();
}
⑷ 原碼是怎麼算
原碼:在數值前直接加一符號位的表示法。
例如: 符號位=數值位
[-7]原=1 0000111 B
注意:a. 數0的原碼有兩種形式:
[+0]原=00000000B [-0]原=10000000B
b. 8位二進制原碼的表示範圍:-127~+127
編碼方式
原碼是有符號數的最簡單的編碼方式,便於輸入輸出,但作為代碼加減運算時較為復雜。
一個字長為n的機器數能表示不同的數字的個數是固定的2^n個,n=8時2^n=256;用來表示有符號數,數的范圍就是 -2^(n-1)-1 ~ 2^(n-1)-1,n=8時,這個范圍就是 -127 ~ +127。
但是在不需要考慮數的正負時,就不需要用一位來表示符號位,n位機器數全部用來表示是數值,這時表示數的范圍就是0~2^n-1,n=8時這個范圍就是0~255。
⑸ 計算機源碼,反碼,補碼之間怎麼計算
正數的源碼、反碼、補碼相同
負數的源碼第一位為1,代表負數,反碼為符號位不變,其他為取反,補碼為反碼加1.
⑹ 計算校驗和的源代碼 急求!
我回答的這個問題和你問的很象,你可以參考一下,稍微改一下就可以用在你的程序里要是一定需要源代碼的話,把你的問題再描述清楚一些,比如要計算什麼的校驗和,文件?結構?流?還是段?http://..com/question/25411574.html
⑺ 知道 補碼,如何 計算 原碼
兩種計算方法:
演算法1: 補碼=原碼取反再加1的逆運算
10010110是補碼,應先減去1變為反碼,得10010101;
由反碼取得源碼即除符號位外其他為按位取反,得11101010,即十進制數的-106
演算法2:負數補碼速演算法,由最低位(右)向高位(左)查找到第一個1與符號位之間的所有數字按位取反的逆運算
10010110是補碼,符號位與最後一個1之間的所有數字按位取反,得11101010
兩種演算法得出同樣結果
⑻ 計算機中補碼為10111010,怎麼計算求源碼
源碼→補碼:除符號位外各位取反再+1,那反之,知道補碼求源碼,只需符號位外各位-1再取反嘍。以此題為例,10111010-1=10111001,再取反得11000110,所以源碼即使11000110。
⑼ 用C語言寫的計算器源代碼
你要寫個什麼樣的,一般最簡單的還是帶公式解析的。
如果只是寫個類似日常使用簡單計算器,我想應該問題不大,如果是要做一個需要對表達式進行解析的計算器,那麼這個就有點難度了,當然了難度也不會大到哪裡去。
⑽ 一個數的原碼,反碼,補碼怎麼算
計算機中的存儲系統都是用2進制儲存的,對我們輸入的每一個信息它都會自動轉變成二進制的形式,而二進制在存儲的時候就會用到原碼,反碼和補碼例如:輸入25原碼是:0000000000011001反碼: 1111111111100110 補碼: 1111111111100111
數值在計算機中表示形式為機器數,計算機只能識別0和1,使用的是二進制,而在日常生活中人們使用的是十進制,"正如亞里士多德早就指出的那樣,今天十進制的廣泛採用,只不過我們絕大多數人生來具有10個手指頭這個解剖學事實的結果.盡管在歷史上手指計數(5,10進制)的實踐要比二或三進制計數出現的晚. "(摘自<<數學發展史>>有空大家可以看看哦~,很有意思的).為了能方便的與二進制轉換,就使用了十六進制(2 4)和八進制(23).下面進入正題.
數值有正負之分,計算機就用一個數的最高位存放符號(0為正,1為負).這就是機器數的原碼了.假設機器能處理的位數為8.即字長為1byte,原碼能表示數值的范圍為
(-127~-0 +0~127)共256個.
有了數值的表示方法就可以對數進行算術運算.但是很快就發現用帶符號位的原碼進行乘除運算時結果正確,而在加減運算的時候就出現了問題,如下: 假設字長為8bits
( 1 ) 10- ( 1 )10 = ( 1 )10 + ( -1 )10 = ( 0 )10
(00000001)原 + (10000001)原 = (10000010)原 = ( -2 ) 顯然不正確.
因為在兩個整數的加法運算中是沒有問題的,於是就發現問題出現在帶符號位的負數身上,對除符號位外的其餘各位逐位取反就產生了反碼.反碼的取值空間和原碼相同且一一對應. 下面是反碼的減法運算:
( 1 )10 - ( 1 ) 10= ( 1 ) 10+ ( -1 ) 10= ( 0 )10
(00000001) 反+ (11111110)反 = (11111111)反 = ( -0 ) 有問題.
( 1 )10 - ( 2)10 = ( 1 )10 + ( -2 )10 = ( -1 )10
(00000001) 反+ (11111101)反 = (11111110)反 = ( -1 ) 正確
問題出現在(+0)和(-0)上,在人們的計算概念中零是沒有正負之分的.(印度人首先將零作為標記並放入運算之中,包含有零號的印度數學和十進制計數對人類文明的貢獻極大).
於是就引入了補碼概念. 負數的補碼就是對反碼加一,而正數不變,正數的原碼反碼補碼是一樣的.在補碼中用(-128)代替了(-0),所以補碼的表示範圍為:
(-128~0~127)共256個.
注意:(-128)沒有相對應的原碼和反碼, (-128) = (10000000) 補碼的加減運算如下:
( 1 ) 10- ( 1 ) 10= ( 1 )10 + ( -1 )10 = ( 0 )10
(00000001)補 + (11111111)補 = (00000000)補 = ( 0 ) 正確
( 1 ) 10- ( 2) 10= ( 1 )10 + ( -2 )10 = ( -1 )10
(00000001) 補+ (11111110) 補= (11111111)補 = ( -1 ) 正確
所以補碼的設計目的是:
⑴使符號位能與有效值部分一起參加運算,從而簡化運算規則.
⑵使減法運算轉換為加法運算,進一步簡化計算機中運算器的線路設計
所有這些轉換都是在計算機的最底層進行的,而在我們使用的匯編、C等其他高級語言中使用的都是原碼