用户登录
用户注册

分享至

ssdb100

  • 作者: 张岩辉
  • 来源: 51数据库
  • 2020-09-22
字节变量一般用Byte表示,表示一个 8 位无符号整数,其范围从 0到255。
  Byte 类型支持标准数学运算,如加法、减法、除法、乘法、减法、求反和一元求反。 与其他该整型类型类似,Byte 类型还支持按位 AND、OR、XOR、左移位和右移位运算符。



  字节变量的定义符为DB/BYTE(Define Byte),每个字节只占一个字节单元。其中:BYTE是MASM 6.0及其以后版本的数据类型说明符,随后的其它类型说明符同此说明。



  我花了点时间调试了下,能出结果,为了方便观察我加了显示
调试软件是emu8086
DATA SEGMENT
SHU DB 12h,6h,8h,9h,3h,16h
SUM DB ?
DATA ENDS
STACK SEGMENT PARA STACK 'STACK'
DB 100 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA
START:
MOV AX,DATA
MOV DS,AX
mov cx,6
MOV AX,0 ;ax清零
lea si,SHU ;指向数据首地址
MOV AL,[SI] ;取第一个数
ONE:
INC SI
MOV BL,[SI] ;取第二个数
ADD AL,BL
DEC CX
JNZ ONE ;不为零跳转
MOV SUM,AX ;将结果放入SUM
MOV BL,100
DIV BL
PUSH AX ;商和余数压栈
OR AL,30H
MOV DL,AL
MOV AH,2
INT 21H ;显示百位
POP AX ;出栈
MOV CL,8
SHR AX,CL ;交换高地位
mov bl,10
DIV BL
PUSH AX ;商和余数压栈
OR AL,30H
MOV DL,AL
MOV AH,2
INT 21H ;显示十位
POP AX
MOV CL,8
SHR AX,CL
OR AL,30H
MOV DL,AL
MOV AH,2
INT 21H ;显示各位
CODE ENDS
END START
看你的程序要不要显示,若不要的话将MOV BL,100语句到INT 21H。



  没什么区别,int和char占多少个字节只和你的编译平台有关,和硬件无关。

64位系统是可以支持64位地址存储和操作的系统,支持2的64次方大小的内存管理,可以同时对64位的数据进行加法运算,而不是现在的32位。
软件
前端设计
程序设计
Java相关