汇编语言编写:从键盘上输入0~9任意一个数字,计算其平方值,输出结果。
用递归实现:
定义main.java:
public static void main(String[] args)
{
System.out.println("Please enter a positive integer");
Scanner x=new Scanner(System.in);
int f=x.nextInt();
for (int i = 1; i < f; i++) {
System.out.println("第"+ i+"个累加因素,和是:"+ sum_fac(i, 1));
}
}
private static int sum_fac(int target, int counter) {
return (target == counter) ? target : counter * (1 + sum_fac(target, counter + 1));
}
自己写的:
ASSUME CS:CODE, DS:DATA
DATA SEGMENT
OUT_TABLE DW PF0, PF1, PF2, PF3, PF4, PF5, PF6, PF7, PF8, PF9
;PIFANG_TABLE
PF0 DB 13, 10, '0, 0H $'
PF1 DB 13, 10, '1, 1H $'
PF2 DB 13, 10, '4, 4H $'
PF3 DB 13, 10, '9, 9H $'
PF4 DB 13, 10, '16, 10H $'
PF5 DB 13, 10, '25, 19H $'
PF6 DB 13, 10, '36, 24H $'
PF7 DB 13, 10, '49, 31H $'
PF8 DB 13, 10, '64, 40H $'
PF9 DB 13, 10, '81, 51H $'
DATA ENDS
CODE SEGMENT
START:
MOV AX, DATA
MOV DS, AX
MOV AH, 1
INT 21H ;输入一字符
CMP AL, '0'
JB EXIT
CMP AL, '9'
JA EXIT
AND AL, 0FH ;AL=0~9
MOV AH, 0
MOV BX, AX ;BX=0~9
ADD BX, BX
MOV AX, [BX] ;查表得出结果
LEA DX, OUT_TABLE
ADD DX, AX
MOV AH, 9 ;显示
INT 21H
EXIT:
MOV AX, 4C00H
INT 21H
CODE ENDS
END START
MOV A,B
MUL AB
MOV R1,A
用C语言怎么编写程序实现从键盘输入数值
\/\/从键盘输入10个数存入一维数组,求这10个数中的最大值和最小值并输出 intmain(){ inti;floatmax,min,num[10];printf("请输入10个数,每输入一个数按回车键结束:\\n");for(i=0;i<10;i++){ scanf("%f",&num[i]);} max=min=num[0];for(i=1;i<10;i++){ if(max<num[i])...
用汇编语言编译一个程序\\从键盘输入一个字符串将其每个字符的ASCII码...
mov ds, ax mov ah, 1 ;键盘输入 int 21h call asc2bin mov bl, al mov bh, 0 dec bx shl bx, 1 mov dx, tab[bx]mov ah, 9 int 21h mov ax, 4c00h Int 21h main endp ;将ASCII转换为二进制数 ;入口:AL存放ASCII ;出口:转换后数值...
用C语言编写如下程序:从键盘为一个5×5整型数组输入数据,找出每一列的...
include <stdio.h>void main(){int i,j,max,a[5][5],b[5];for(i=0;i<5;i++)for(j=0;j<5;j++)scanf("%d",&a[i][j]);for(j=0;j<5;j++){max=a[0][j];for(i=1;i<5;i++)if(a[i][j]>max){max=a[i][j];b[j]=i;}}for(i=0;i<5;i++)...
用C语言编写一个程序,从键盘上输入一个小写字母,将其本身及对应的大写字...
scanf("%c",&c); \/\/键盘上取值 printf("%c %c",c,ch-'a'+'A');\/\/本身和大写输出 }
C语言编程:从键盘输入两个实数后,屏幕显示菜单如下内容?
int main(void){ double n1, n2, result; int choice; printf("请输入两个实数:"); scanf("%lf%lf", &n1, &n2); ...
用C语言编写程序,从键盘输入两个八进制数,计算两数之和并分别用十进制...
include "stdio.h"void main(){ int a,b;printf("请输入2个八进制数:");scanf("%o %o",&a,&b);printf("a+b = %d(十进制)\\n",a+b);printf("a+b = %x(十六进制)\\n",a+b);}
用C语言编写程序:从键盘输入10个学生的成绩,输出其最大值、最小值、和...
double a[10]={};double sum=NULL;double max=NULL;double min=NULL;puts("请输入10个学生的成绩:");for(int i=0;i<10;i++){ scanf("%lf",&a[i]);} for(int i=0;i<10;i++){ sum+=a[i];i==0?max=a[0],min=a[0]:(maxa[i]?min=a[i]:NULL);} printf("所有元素...
用C语言编写一个程序:从键盘输入n(0<N<100)个整数,计算并输出其中出现...
1:次数最多 2:在次数最多的基础上,数值最大 ___以下为程序:include <iostream> \/\/ 设置最大值 define MAX 100 typedef struct record { int number[MAX];int counter[MAX];}record;int isExist(int array[], int index, record rd){ int i;int flag = -1;bool finish = true;for ...
用汇编语言用汇编语言编写从键盘上输入N个学生的成绩,然后按成绩降序输 ...
学生成绩输出时是先输出成绩,再输出其序号。 CODE SEGMENT ASSUME CS:CODE ORG 100H START: PUSH CS POP DS PUSH CS POP ES CALL INPUTNUM MOV AH,2 MOV DL,13 INT 21H...
编写一个C语言程序:从键盘读入一行文本,统计每个英文字母出现的次数_百 ...
1、循环读取字符,直到换行为止。对于每个字符,执行以下流程。2、判断是否为英文字母,即小写和大写两种。3、如果是英文字母,则统计个数。输入部分,可以存为数组,也可以每输入一个字符计算一次。二、参考代码:include <stdio.h>int main(){ int c; int cnt[52]={0}; while((c=get...
巩步四季: CODES SEGMENT MAIN PROC FAR ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX MOV AX,STACKS MOV SS,AX MOV SP,OFFSET TOP ;取得TOP的偏移地址,送入SP MOV BX,OFFSET TABLE ...
余江县18314285798: 汇编语言,键盘输入字符,若是0~9,则直接显示 - ?
巩步四季: ;汇编语言,键盘输入字符, ;若是0~9,则直接显示. ;若是A~Z或a~z,则均显示'*'. ;若是其它字符则不显示,继续等待新的字符输入, ;用回车键结束程序.ASSUME CS:CC, DS:QWER ;================================== ...
余江县18314285798: 汇编语言编写:从键盘上输入0~9任意一个数字,计算其平方值,输出结果. - ?
巩步四季: MOV B,#XXH MOV A,B MUL AB MOV R1,A
余江县18314285798: 用汇编语言编写程序:从键盘输入5个数(0~9),找其中最大值并显示!急求!!谢谢!!! - ?
巩步四季: ;程序硬性规定了输入要1 2 8 6 1 这样输入, 即每输入1数字就要空一格assume cs:code, ds:data data segment STR db 0AH,0DH,"Please input five number(0~9): $" BUF db 20 db ? db 20 dup (?) MAX db ? CRLF db 0AH,0DH,'$' ...
余江县18314285798: 编写程序: 从键盘上连续打入多个属于'0'到'9'的数字符并在屏幕上显示, 遇到非数字字符结束输入过程.?
巩步四季: CODE SEGMENT ASSUME CS:CODE START: push cs pop ds push cs pop es mov ah,0 int 16h mov cx,10 mov di,offset buff_1 lp1: stosb cmp al,3ah jb lp2 sub al,10 lp2: inc al loop lp1 mov dx,offset buff_1 MOV AH,09H INT 21H MOV AH,4CH INT 21H buff_1 db 10 dup(30h) db 24h CODE ENDS END START
余江县18314285798: 用汇编语言编写从键盘输入数字键0 - 9,按回车键转换显示为大写字母A - J. - ?
巩步四季: mov ah, 01h int 21h mov dl, al add dl, 41h mov ah, 02h int 21h
余江县18314285798: 从键盘输入两个0~9之间的数 计算两数之和 结果送入数据段的SUM变量 要求编写汇编程序实现 - ?
巩步四季: Data Segment sum DW 0 Data EndS Code Segment Assume CS:Code,DS:Data Start: MOV AX,Data MOV DS,AX Input1: MOV AH,1 INT 21H SUB AL,'0' MOV AH,0 MOV SI,AX ;两个数之间有一个空格 MOV AH,1 INT 21H Input2: MOV AH,1 INT...
余江县18314285798: 用C++写汇编语言 输出从键盘输入的十个数 - ?
巩步四季: #........void main() { int a[10],i; printf("请输入十个数:"); for(i=0;i<10;i++) { scanf("%d",@a[i]); } for(i=0;i<10;i++){ printf("%d",a[i]);}
余江县18314285798: 从键盘接受0 - 9之间任意四个字符,转换成数值后求和,把结果存入sum存储单元.用汇编语言. - ?
巩步四季: mov al,0 mov sum,al mov cx,4 next:mov ah,1 int 21h sub al,30h add sum,al loop next
余江县18314285798: [汇编语言]由键盘输入任意字符串 然后显示出来 - ?
巩步四季: data segment keyboard db 256,?,256 dup (?) data ends code segment assume cs:code,ds:data main proc far mov ax,data mov ds,ax lea dx,keyboard mov ah,0ah;输入字符串 int 21h lea di,keyboard mov cl,[di+1];取出实际输入字符的个数 mov ...